Git 從入門到跑路(一)

1

今天是左小白入職新公司的第一天,這是左小白第二家公司,第一家公司工做 2 年,左小白後面已經能獨立作整個項目,本想畢業就來這家公司,如今能力自我感受也不錯,是該漲波工資了,因而他找到領導,但願能漲 2 K,領導巴拉巴拉說了不少,就是沒說漲工資,左小白心寒,這是寧願再招人也不肯意給老員工漲薪!java

次日,左小白就開始進入項目,他發現新公司版本控制是用的 Git,以前是 SVN,問了旁邊的同事,跟他說,Git 和 SVN 沒什麼區別的,會 git addgit commit就夠了,左小白心想,SVN 他已經用的很溜,Git 那豈不是信手拈來,拿起鍵盤就幹起來了。git

2

左小白首先安裝 Git,git config好了郵箱和姓名,而後git clone項目,就看起了代碼,熟悉項目。可能由於左小白是新人,組長先分給他簡單的任務,登陸頁面實現,這對於左小白徹底是殺雞用牛刀,不到兩個小時,他就完成了,自測也 OK,能夠提交代碼了,修改涉及到頁面 login_activity.xml、LoginActivity.java、LoginModel.java、ApiStores.java 總共四個文件,按照同事說的,先 add 再 commit,git add ApiStores.javagit add LoginActivity.javagit add LoginModel.javagit add login_activity.xml,草(一種植物),終於 add 完了,再git commit,填上提交信息「Login」,覺得這樣就 OK 了,沒想到這幕被組長正巧看到,左小白徹底察覺到組長站在身後,大概工做太認真。bash

3

組長:小白,你這樣提交就 OK 了嗎?
左小白:嗯,是的,我以前 SVN,這樣就行了啊。
組長:不,你要了解 Git 和 SVN 仍是有些不一樣,你要了解下工做區、暫存區、本地倉庫、遠程倉庫。
左小白:什麼……
組長:何況,你這這樣一個 add 是否是有點費勁,如今就 4 個修改,看你都 add 好久,有 10 個 20 個甚至 100 個文件,怎麼辦,一個個 add 不得死人啊。
左小白:那應該怎麼 add 啊?
組長:你起來,我操做一遍給你看下。markdown

4

只見組長一頓操做,「我先把你提交回退掉,演示一遍給你看看」,等等,回退,那我今天代碼豈不是白敲,組長估計看出了我疑惑,他接着說,你的代碼還在,你看下我首先用的是git status .看下有哪些修改:spa

git status .
On branch master
Your branch is up to date with 'origin/master'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	ApiStores.java
	LoginActivity.java
	LoginModel.java
	login_activity.xml

nothing added to commit but untracked files present (use "git add" to track)
複製代碼

看到有 4 個文件修改,接下來看好了,我是用git add . 命令,而不是你那樣一個個 add,這個.代碼當前目錄全部修改和新建,另外你 commit 是提交到本地倉庫,明白了嗎?版本控制

5

左小白這時有點懵逼,原來 Git 這麼複雜,他此時很想錘旁邊的同事,是他說 Git 和 SVN 差很少,害他在領導面前出醜。他如今有 3 個疑問:一、工做區、暫存區、本地倉庫、遠程倉庫都是啥?二、他剛剛提交好了,組長一頓操做是如何回退的?三、他若是刪除了文件,怎麼 add?他是沒敢問組長,太丟人了。code

未完待續……orm

更多文章請關注公號:吳小龍同窗xml

相關文章
相關標籤/搜索