-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgit.html
92 lines (84 loc) · 6.53 KB
/
git.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="../stylesheets/blog.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<title>Bill's Technical Blog: Introducing the Command Line, Git and GitHub</title>
</head>
<body>
<div class="outer-div">
<div class="inner-left">
<aside id="sidebar-fixed">
<ul class="buttons-ul">
<li><a href="index.html"><i class="fa fa-bars"></i><br>Blog Page</a></li>
<li><a href="../index.html"><i class="fa fa-home"></i><br>Home Page</a></li>
<li><a href="https://www.facebook.com/" target="_blank"><i class="fa fa-facebook-official"></i><br>Facebook</a></li>
<li><a href="https://twitter.com/" target="_blank"><i class="fa fa-twitter-square"></i><br>Twitter</a></li>
</ul>
</aside>
</div>
<div class="inner-right">
<main>
<section id="main-content">
<h1>Introducing the Command Line, Git and GitHub</h1>
<p>
February 10, 2016
</p>
<div class="blog-img-div">
<img src="../imgs/command-line-desktop.jpg" alt="Command Line Screenshot" width="600" height="300">
</div>
<section>
<h2>What is Command Line? Why is it useful and how can a beginner learn it?</h2>
<p>
Most people are familiar with wallpapers, folders, icons, using the mouse and double-clicking. This is called
<b>graphical user interface (GUI)</b> which is shown on the top right side of the image. You use these tools to navigate and control your computer. It's visually intuitive, simple to learn and use, you can open multiple programs and easily jump between the programs with a mouse.
</p>
<p>
Another way to navigate and control your computer is <b>command line interface (CLI)</b> which is shown on the top left side of the image. With command line you will only see text, use the keyboard and almost never touch the mouse. Since you have to memorize and use specific commands to do all the things you would normally do in GUI, it's generally harder to learn CLI. And not to mention some people are probably turned-off by all the text.
</p>
<p>
Although there some things you can do faster using GUI than CLI, for example switching between multiple programs, there are many things you can do with CLI which are almost impossible to do with GUI for example, list all the files you modified this month. Here is an interesting article that talks about the pros and cons of using GUI and CLI which you can find <a href="http://www.computerhope.com/issues/ch000619.htm" target="_blank"> here</a>.
</p>
<p>
I think GUI and CLI are both useful for different purposes so it's a good idea to learn both. If you're looking for a good resource to learn the command line check out <a href="http://cli.learncodethehardway.org/book/" target="_blank">the command line crash course</a>.
</p>
</section>
<div class="blog-img-div">
<img src="../imgs/git-branching.png" alt="Git Flow" width="1000" height="250">
</div>
<section>
<h2>What is Git? What is GitHub? Why are they useful?</h2>
<p>
<b>Git </b> is a free and open source version control system mostly used for software development. <b>Version control </b> is when you organize many versions and configurations of a software. I'm convinced version control is a wonderful tool to have and Git is one of the popular version control tools. Here are some benefits of using version control (Git):
</p>
<ul>
<li>At any given time, you can see how much work is being done, which part of the source code is being worked on, when changes were made and by whom</li>
<li>If you made changes and realized it was a mistake, you can revert back</li>
<li>Helps you automatically keep track and organize multiple versions of your codes so you can focus on the more important tasks</li>
<li>Not convinced and want more reasons to use version control? Check out <a href="http://stackoverflow.com/questions/1408450/why-should-i-use-version-control" target="_blank"> Stack Overflow</a></li>
</ul>
<p>
<b>Github </b> is a web-based Git repository hosting service. Think of it as Git but on the web instead of on your computer with a few other features. An alternative to Github is <b>BitBucket</b> but what makes Github so powerful are 3 key features according to
<a href="http://techcrunch.com/2012/07/14/what-exactly-is-github-anyway/" target="_blank"> TechCrunch</a>:
</p>
<ol>
<li>Fork - copying a repository from one account to another, essentially taking someone else's project (with their permission)</li>
<li>Pull request - requesting to have your changes added to the master project</li>
<li>Merge - accepting a pull request and merging the new changes to the master project</li>
</ol>
<p>
These are the things I am learning this week: command line, Git, and Github, all of which developers probably use every day. I think it really helps to learn these tools and best practices from the start so we can get into the mindset of being a developer.
</p>
</section>
</section>
</main>
</div>
</div>
<footer>
<hr>Made from HTML, CSS and coffee © 2016 Bill Deng
</footer>
</body>
</html>