作者:zhanhailiang 日期:2014-11-21
在使用版本號工具提交改動之前,都須要通過update先將本地代碼更新到最新版本號。SVN通過svn update就能夠實現,那么git怎樣實現呢?
1. 首先通過從遠程的origin的master主分支下載最新的版本號到本地origin/master分支上,然后比較差別,最后合並到當前分支;
[root@~/wade/nodejs/express-routing]# git fetch git@github.com:billfeller/express-routing.git master From github.com:billfeller/express-routing * branch master -> FETCH_HEAD [root@~/wade/nodejs/express-routing]# git log commit c7f2ae18cd3648d32fa3dcd50060fa7f13a093b1 Author: billfeller <billfeller@gmail.com> Date: Fri Nov 21 01:41:40 2014 +0800 express-routing test commit dd5923229abe4e1da706ce53ad4b41154cb89ea7 Author: billfeller <billfeller@gmail.com> Date: Fri Nov 21 01:07:03 2014 +0800 Merge branch 'master', remote branch 'origin' commit d1aee713ca98e5cdead1978dcfcf7a55974a2851 Author: billfeller <billfeller@users.noreply.github.com> Date: Fri Nov 21 01:05:12 2014 +0800 Create README.md commit 5aa66ffc06b95aeb8ef42627fe4b97c95cb660b9 Author: billfeller <billfeller@users.noreply.github.com> Date: Fri Nov 21 01:03:05 2014 +0800 Initial commit [root@~/wade/nodejs/express-routing]# git merge origin/master Updating c7f2ae1..8d3058b Fast-forward README.md | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
2. 通過git pull一步到位,相當於是從遠程獲取最新版本號並merge到本地,即第一種方法的快捷命令。
[root@~/wade/nodejs/express-routing]# git pull remote: Counting objects: 3, done. remote: Compressing objects: 100% (2/2), done. remote: Total 3 (delta 1), reused 0 (delta 0) Unpacking objects: 100% (3/3), done. From github.com:billfeller/express-routing 8d3058b..82a02eb master -> origin/master Updating 8d3058b..82a02eb Fast-forward README.md | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
在實際開發中,還是推薦使用第一種方式,由於git fetch更安全一些,能夠通過git fetch后查看更新情況,再決定是否進行合並。