git常用命令及實例

git簡介

Git是一個免費的開源版本控制系統,最初由Linus Torvalds在2005年創建。與諸如SVN和CVS之類的較舊的集中版本控制系統不同,Git是分佈式的:每個開發人員都在本地擁有其代碼存儲庫的完整歷史記錄。 這使存儲庫的初始克隆速度變慢,但隨後的操作(例如commit,blame,diff,merge和log)則大大加快(dramatically faster.)。

Git還對branching——分支,merging——合併和rewriting重寫存儲庫歷史記錄提供了出色的支持,這帶來了許多創新而強大的工作流和工具。 pull request是一種非常流行的工具,它允許團隊在Git分支上進行協作並有效地檢查彼此的代碼。 Git是當今世界上使用最廣泛的版本控制系統,被認爲是軟件開發的現代標準。

git常用命令

Git task Notes Git commands
用戶配置 配置要用於提交的作者姓名和電子郵件地址。
請注意,Git從user.name中剝離了一些字符(例如尾隨句點)。
git config --global user.name "Sam Smith"

git config --global user.email [email protected]

創建一個新的本地repository  
git init
check out一個repository 創建本地存儲庫的工作副本
git clone /path/to/repository
對於遠程服務器,請使用:
git clone username@host:/path/to/repository
添加文件 將一個或多個文件添加到暫存(索引)中:
git add <filename>

git add *
提交commit 將更改提交到頭部(但尚未提交到遠程存儲庫):
git commit -m "Commit message"
提交使用git add添加的所有文件,以及提交自那時以來更改的任何文件:
git commit -a
push 將更改發送到遠程存儲庫的master分支:
git push origin master
status 列出您已更改的文件以及仍需要添加或提交的文件:
git status
連接到一個遠端的repository 如果您尚未將本地存儲庫連接到遠程服務器,添加服務器以將其推送到遠程服務器: git remote add origin <server>
列出所有當前配置的遠程存儲庫: git remote -v
分支branches 創建一個新分支並切換到它:
git checkout -b <branchname>
從一個分支切換到另一個:
git checkout <branchname>
列出您的存儲庫中的所有分支,並告訴您當前位於哪個分支:
git branch
刪除功能分支:
git branch -d <branchname>
將分支推送到您的遠程存儲庫,以便其他人可以使用它:
git push origin <branchname>
把所有分支發送到遠程存儲庫
git push --all origin
刪除遠程存儲庫的一個分支
git push origin :<branchname>
遠端repository的更新 提取併合並遠程服務器上的更改到您的工作目錄: git pull
要將另一個分支合併到活動分支中:
git merge <branchname>

查看所有合併衝突:
查看與基本文件的衝突:

合併前預覽更改:

git diff

git diff --base <filename>

git diff <sourcebranch> <targetbranch>
手動解決所有衝突後,請標記更改的文件:
git add <filename>
標記tags 您可以使用標記來標記重要的變更集,例如版本:
git tag 1.0.0 <commitID>
CommitId是變更集ID的前導字符,最多10個,但必須唯一。 使用以下方法獲取ID:
git log
將所有標籤推送到遠程存儲庫:
git push --tags origin
撤銷本地修改undo 如果對所有的代碼混亂了,可以將工作樹中的更改替換爲head中的最後一個內容:
已經添加到索引中的更改以及新文件將被保留。
git checkout -- <filename>
相反,要刪除所有本地更改和提交,請從服務器獲取最新歷史記錄,然後將本地master分支指向該服務器,請執行以下操作:
git fetch origin

git reset --hard origin/master
查找 在工作目錄中搜索foo(): git grep "foo()"

此外,還有一個非常有用的命令git restore,用於撤銷本地的文件修改。

如何刪除untracked 的文件呢?可以使用命令 git clean -f 。注意這個命令刪除的是新增的文件,不包含有改動的文件,有改動的就用上面的命令。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章