將本地檔案傳輸到GitHub

wuliytTaotao發表於2018-10-18

統一概念: 

  • 工作區:增刪檔案和內容

  • 暫存區:鍵入命令 git add 改動的檔案,此次改動就放到了 『暫存區』

  • 本地倉庫 :鍵入命令 git commit ,此次改動就放到了『本地倉庫』,每個 commit,我叫它為一個 『版本』。

  • 遠端倉庫:鍵入命令 git push 到遠端倉庫,此次改動就放到了 『遠端倉庫』。

  • commit-id:輸出命令 git log,最上面那行 commit xxxxxx,後面的字串即 commit-id。

 

  清理git的快取:

$ git rm -r --cached .       // 清空當前資料夾的所有快取(本地的依然儲存)
$ git rm -f .            // 將當前資料夾的檔案清空,本地檔案也會清空,回收站也找不到,該指令請謹慎執行
$ git clean -df .        // 本地檔案同樣會被刪除,回收站也找不到,該指令請謹慎執行

  檢視當前git的狀態:

$ git status

  檢視遠端倉庫:

$ git remote        //簡寫
$ git remote -v     //全程    

  修改之後的檔案以及新新增的檔案,在commit之前都需要先 add:(以 tmp.py 檔案和 data 資料夾為例)

$ git add tmp.py         // 新增單個檔案
$ git add data/          // 新增一個目錄下的所有檔案
$ git add tmp.py data/     // 新增多個檔案或者資料夾  

  重新命名檔案,將 main.py 重新命名為 module.py:

$ git mv main.py module.py

  commit到本地倉庫:

$ git commit -m "說明文字"

  推送到遠端倉庫:

$ git push [remote-name] [branch-name]

當 remote-name 為 origin,branch-name 為 master時,git push origin master。

  直接取消上一次 commit:

$ git reset HEAD~1
$ git reset --hard HEAD~1    // 加上引數“--hard”則不保留當前更改

  如果想撤回上一次 add:

$ git reset HEAD          // 如果後面什麼都不跟的話 就是上一次 add 裡面的全部撤銷了 
$ git reset HEAD tmp.py     // 就是對某個檔案進行撤銷了

  檔案 .gitignore 的用法:

# 寫在 .gitignore 中的檔案/資料夾都不會加入到 git 倉庫中,當然前提是該檔案/資料夾之前就不在倉庫中,否則還是被 add 進來。如:
# 檔案
*.pyc
tmp.py
# 資料夾
.idea/
__pycache__/

  git 刪除遠端倉庫: 

$ git remote rm origin

  git 新增遠端倉庫,並將其命名為 origin:(git 倉庫改成自己的即可)

$ git remote add origin https://github.com/wuliytTaotao/Learning-Materials.git 

  統計本地倉庫和遠端倉庫之間的的改動:(將 local_brach、origin/remote_branch 改成自己定義的名字,如 master)(如果本地倉庫只是遠端倉庫歷史中的某個節點,下面語句是不會顯示有什麼不同的。)

$ git diff --stat local_branch origin/remote_branch

  git diff 的一些用法:

$ git diff                  // 輸出工作區和暫存區的 different (不同)。
$ git diff <commit-id> <commit-id>    // 還可以顯示本地倉庫中任意兩個 commit 之間的檔案變動:
$ git diff --cached             // 輸出暫存區和本地最近的版本 (commit) 的 different(不同)。
$ git diff HEAD               // 輸出工作區、暫存區 和本地最近的版本 (commit) 的 different (不同)。 

  git log 怎麼退出到命令列?輸入字母 'q' 即可。

 

References

走在前沿的弄潮兒,怎能不會Git的那些奇技淫巧 -- 機器之心

相關文章