主要目的
- 實現 git 項目管理,本地開發與提交。
- 立本地分支與遠程分支的映射關係(或者爲跟蹤關係 track)。這樣使用 git pull 或者 git push 時就不必每次都要指定從遠程的哪個分支拉取合併和推送到遠程的哪個分支了。
命令及說明
- 從遠程拉取分支到本地
git checkout -b 本地分支名 origin/遠程分支名
- 查看本地分支
git branch
- 查看遠程分支
git branch -r
- 查看所有分支
git branch -a
- 新建一個本地分支
git branch 本地分支名
- 新建一個本地分支並切換到該分支
git checkout -b 本地分支名
- 切換到另一個分支
git checkout 分支名
- 將本地新建的分支與遠程分支相關聯(在當前分支下輸入以下命令)
git branch -u origin/分支名 其中origin/分支名 中分支名 爲遠程分支名
或使用下面命令
git branch --set-upstream-to origin/分支名
- 查看本地分支與遠程分支的映射關係
git branch -vv
- 撤銷本地分支與遠程分支的關係
git branch --unset-upstream
11、拉取遠程分支
git fetch origin(不指定分支名就是遠程全部分支)
git fetch origin XXX(拉下遠程指定的分支)
12、刪除本地的分支
git branch -d XXX
13、刪除遠程倉庫的 分支.
git push origin --delete XXX
14、合併分支
例如:想將 dev 分支合併到 master 分支,操作如下:
git checkout master //切換到master分支上
git pull origin master //把遠程分支pull下去,及時更新
git merge dev //把dev分支的代碼合併到master上
git branch --merged //只是爲了確認所有內容都已合併,請運行以下命令:
git status // 查看狀態
git push origin master //push到遠程分支
其他命令
更新遠程分支列表
git remote update origin --prune
查看所有分支
git branch -a
刪除遠程分支Chapater6
git push origin --delete Chapater6
刪除本地分支 Chapater6
git branch -d Chapater6
15、推送本地分支到遠程分支
//遠程先開好分支然後拉到本地
git checkout -b feature origin/feature //檢出遠程的feature分支到本地
//本地先開好分支然後推送到遠程
git checkout -b feature //創建並切換到分支feature
git push origin feature:feature //推送本地的feature(冒號前面的)分支到遠程origin的feature(冒號後面的)分支(沒有會自動創建)
15、保存當前工作進度
保存當前工作進度
git stash
添加一些註釋
git stash save 'message...'
恢復最新的進度到工作區
git stash pop
16、用於比較兩次修改的差異
工作區與暫存區(默認)
git diff
Git倉庫 vs Git倉庫
git diff <commit> <commit>
暫存區 vs Git倉庫
git diff --cached <filename>
17、git tag 給當前分支打標籤
列出當前分支所有標籤
git tag
查看標籤版本信息
git show v0.1.2
打標籤(輕量標籤和附註標籤)
git tag v0.1.2 (標籤版本)
git tag -a v0.1.2 -m '0.1.2版本' (帶標註的標籤)
# 補打標籤
git tag -a v0.1.2 9fbc3d0 (爲之前的版本補打標籤)
刪除標籤
git tag -d v0.1.2 刪除標籤
標籤發佈(git push 不會將標籤對象提交到git服務器)
git push origin v0.1.2 # 將v0.1.2標籤提交到git服務器
git push origin –-tags # 將本地所有標籤一次性提交到git服務器
18、遠程分支覆蓋本地分支(慎用)
git fetch --all (拉取所有分支)
git reset --hard origin/master (master指定遠程的分支)
git pull
19、本地分支覆蓋遠程分支(慎用)
git push origin 分支名 --force (遠程分支名)