天天看點

建構之法--初識Git

該作業來自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2103

GitHub位址:https://github.com/GVictory/softwarEengineering

前言:

  Git是一個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。使用Git,能夠毫不費力的恢複到你想要的版本狀态,比如這個周的文檔被改的亂七八糟的,就可以通過GIt回退到上個周的版本,而且使用GIt,可以共享自己的檔案,代碼,其他人可以使用這個Git倉庫,進行檢視,修改,送出。其他人隻要更新就能看到變化,同通過GIt來開發項目,能夠有效的提高項目效率,縮短開發程序。接下來通過一下的八個操作來熟悉GIt。

所用軟體及版本:

  GIt Bash:2.15.1.2-64-bit.

  notepad++:7.5.8-64-bit.

  作業系統:window 10.

1.下載下傳安裝配置使用者名和郵箱:

  可以通過該網站https://git-scm.com/downloads/下載下傳git,然後進行安裝。安裝完成後,即可通過git bash來設定使用者名和郵箱。使用者名和郵箱位址是本地git用戶端的一個變量,每次commit都會用使用者名和郵箱紀錄,github的contributions統計就是按郵箱來統計的。

  以下為配置說明:

  git config -global user.name "gmuk":配置使用者使用者名

  git config -global user.email "[email protected]":配置郵箱

  配置完成後,可通過git config user.name 和 git config user.email檢視目前配置資訊。

建構之法--初識Git

2. 建立工作目錄并通過git init指令把這個目錄變成Git可以管理的倉庫:

  配置完使用者名和郵箱後,就可以講工作目錄初始化成Git倉庫,這裡有兩個方法建立工作目錄,第一個是利用windows直接建立工作目錄,第二種是通過git bash來建立工作目錄,此處使用的第二種方法。初始化工作目錄後,在該目錄下會生成一個.git檔案,這個就是git倉庫,用來管理版本的,這個檔案最好不要去動他,可能會造成git倉庫的被破壞。

       pwd:檢視目前工作目錄

  cd /e:進入/e目錄,即e盤

  mkdir testGit:在目前工作目錄下建立名為testGit的檔案夾

  cd /e/testGit:進入testGit的目錄

  git init:初始化該檔案夾為git倉庫

  ls -a:檢視該目錄下的所有檔案

建構之法--初識Git

3. 在工作目錄下準備文本檔案,建議下載下傳Notepad++代替記事本:

  初始化git倉庫後,就可以往git倉庫放入檔案,此處注意,需要放在被初始化的倉庫的根目錄,在本例子中即為testGit,在這裡我們放入一個文本,為了防止出現亂碼問題,這裡我們建議使用NotePad++來編輯文本。

建構之法--初識Git

4. 組合用git add、git commit、git status 把檔案送出到倉庫:

  添加完檔案後,使用git add和git commit送出檔案,并用git status檢視狀态。

  git add:将修改添加到暫存區。

  git commit:将暫存區的改動添加到版本庫中。

  git status:檢視工作目錄和暫存區的狀态。

建構之法--初識Git

5. 練習送出三個或以上的版本:

  重複練習4,熟悉版本送出操作。

建構之法--初識Git

6. 組合使用git diff、git log、git reset指令進行版本管理與回退,觀察檔案變化:

  經過多次的git commit後,我們可以通過git log來檢視版本狀态,其中加上--pretty=oneline,就會在一行内顯示單個版本資訊。在這裡要注意一下,git diff用來檢視工作區和版本庫内容的差別,當剛送出完後,git diff不會顯示任何内容。

  git diff:檢視工作區和版本庫的差別。

  git log:檢視版本日志。

  git reset:版本回退。

建構之法--初識Git

7. 将Git倉庫托管到GitHub網站上:

  當需要将Git倉庫交由第三方來進行版本管理時,可以将Git倉庫托管到GitHub網站上,GitHub作為免費的遠端倉庫,如果是個人的開源項目,放到GitHub上是完全沒有問題的。其實GitHub還是一個開源協作社群,通過GitHub,既可以讓别人參與你的開源項目,也可以參與别人的開源項目。要将Git倉庫托管到需要擷取SSH Keys,如果使用者目錄裡沒有SSH Keys,就需要建立一個,然後複制該目錄下的id_rsa.pub,然後在gitHub上添加本地倉庫的SSH Keys,至此,就完成了git倉庫的托管。

  ssh-keygen -t ras -C "[email protected]":建立一個SSH keys

  git remote add origin [email protected]:GVictory/softwarEengineering.git:将本地倉庫托管到指定遠端倉庫。

建構之法--初識Git
建構之法--初識Git
建構之法--初識Git
建構之法--初識Git

8. 把本地倉庫的内容推送到GitHub倉庫:

  将Git倉庫托管到GitHub後,即可将本地的檔案上傳到遠端倉庫,這個就可以進行同步。在這裡需要注意,當遠端倉庫第一次使用有其他本地倉庫沒有的檔案時,需要将遠端倉庫的檔案先更新到本地倉庫,然後再一起和本地倉庫的檔案送出到GitHub倉庫。步驟如下:先git getch origin,再git merge origin/master,當出現fatal時,再git pull origin master --allow-umrelated-histories,這樣即實作了遠端倉庫和本地倉庫的檔案同步。

  git push -u origin master:将本地的master分支推送到origin主機,同時指定origin為預設主機,後面就可以不加任何參數使用git push

  git fetch origin: 從遠端擷取最新版本到本地,不會merge

  git merge origin/master:将遠端master分支的代碼merge進本地分支

  git pull origin master --allow-umrelated-histories:本地分支推送到遠端分支

建構之法--初識Git
建構之法--初識Git
建構之法--初識Git