1. 程式人生 > >git建立本地分支以及推送本地分之至遠端分支

git建立本地分支以及推送本地分之至遠端分支

Git分支策略

實際開發中,應當按照以下幾個基本原則進行管理:

首先,master分支應該是非常穩定的,也就是僅用來發布新版本,平時不能再上邊幹活。

那在哪幹活呢?幹活都在dev分支上,也就是說,dev是不穩定的,到某個時候,比如1.0版本釋出的時候,在將dev分支合併到master,在master分支釋出新版本。

你和你的小夥伴都有自己的分支,每個人在自己的分支上幹活,時不時地往dev分支上合併就可以了。

所以團隊合作分之看起來就像這樣:

git建立分支並切換到當前新建立的分支上

git checkout -b dev

開發完成後

git push origin dev

此時就將本地分支推送到遠端相應的分支上了

此時,團隊裡另一個成員要更新遠端dev分支上的程式碼

git pull

若出現如下錯誤

$ git pull
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 3 (delta 0)
Unpacking objects: 100% (3/3), done.
From github.com:michaelliao/learngit
   fc38031..291bea8  dev        -> origin/dev
There is no tracking information for
the current branch. Please specify which branch you want to merge with. See git-pull(1) for details git pull <remote> <branch> If you wish to set tracking information for this branch you can do so with: git branch --set-upstream dev origin/<branch>  

git pull失敗了,原因是沒有指定本地dev分支與遠端dev分支的連結。

根據提示設定

git branch --set-upstream dev origin/dev

此時又出現提示

The --set-upstream flag is deprecated and  will be removed.Consider using --track or --set-upstream-to

Branch dev set up to track remote branch dev from origin.

於是重新設定

git branch --set-upstream-to  origin/dev

然後就直接pull了

git pull

該同事修改完成後,又要將本地分支推送到遠端dev分支

但他習慣性的用了

git push

於是出現了警告

warning:push.default is unset;its implicit  value has changed in Git 2.0 from 'matching' to 'simple' .

根據提示

我們設定

git config --global push.default simple

之後就可以直接用

git push

而不用再寫

git push origin dev了