歡迎訪問個人blog:http://blog.thinkinside.mephp
最近在跟蹤Linphone的Android版本的項目,發現代碼同步老出問題。
因而仔細的學習了一下git submodule的使用方法。
參考資料
【1】https://git.wiki.kernel.org/index.php/GitSubmoduleTutorial
【2】https://blogs.atlassian.com/2013/03/git-submodules-workflows-tips/
【3】http://speirs.org/blog/2009/5/11/understanding-git-submodules.html
【4】http://www.vogella.com/articles/Git/article.html#submodules
與svn的external的異同
相同點:
用來引用外部項目
不一樣點:
git submodule引用的是具體的
某一次commit,而svn external則是直接連接外部的subversion repository
最新的checkin
經常使用操做
增長submodule
git submodule add
同步submodule
git pull --recurse
git submodule update --recursive
checkin submodule的內容
1 修改submodule並checkin
/*some modification*/
cd submodule_dir
git add .
git commit -m "check in in submodule"
2 checkin修改後的submodule commit id
cd base_dir
git add submodule_dir
git commit -m "check in in base_dir"