我有一個包含其他git存儲庫的git存儲庫。是否存在遞歸推送和/或拉取不僅是元存儲庫而且還有子存儲庫的命令?遞歸Git推/拉?
回答
如果你在談論子模塊,請參閱紙杯蛋糕的答案。
,如果你談論的是一些文件夾層次包含git的回購協議,你可以檢出clustergit
,一個工具,我編程:https://github.com/mnagel/clustergit
謝謝,我會試試看。假設遙控器以前都已經設置好了,我只需要在頂層目錄中運行'clustergit -p'來遞歸地拉動? –
@ DavidY.Stephenson yes,clustergit會遞歸掃描'.git'目錄的目錄(默認值:'.')來決定git存儲庫的存放位置。然後它在這些上運行'git status'。如果狀態是乾淨的並且指定了-p,那麼它將執行'git pull',只有在設置了遠程的情況下才會成功,否則會出現警告(但clustergit將繼續與其他存儲庫一起)。 – mnagel
你能給我一個示例命令來說,遞歸地推送到原點主?我從文檔中整理出來有些麻煩。 –
不太git pull
,但接近:
git fetch --recurse-submodules
--recurse-submodules[=yes|on-demand|no]
此選項控制是否以及在什麼條件下新的填充子模塊的提交也應該被取出。當設置爲no時,它可以用作布爾選項來完全禁用遞歸,或者當設置爲yes時無條件遞歸到所有已填充的子模塊中,這是默認情況下使用此選項時沒有任何值。如果超級項目檢索提交,該提交將子模塊的引用更新爲不在本地子模塊克隆中的提交,則按需使用即可遞歸到已填充的子模塊中。
我不是(明知)指的是子模塊。我有一個包含其他存儲庫的存儲庫。所有這些存儲庫都由我初始化。我應該把它們變成子模塊嗎? –
我發現自己在同樣的情況時,我想更新我的LLVM /鐺庫,並與有點bash的幫助下,我可以「混帳拉」他們每個人是這樣的:
$> for dir in $(find . -name ".git"); do cd ${dir%/*}; git pull ; cd -; done
這將「混帳拉」你的當前目錄下找到所有的git回購協議,如果他們是裸露的庫可能無法正常工作。
我剛剛寫了一個腳本在多個git存儲庫上遞歸執行。你可以從這裏抓住它:
https://github.com/DariuszOstolski/rgit
的想法是完全一樣的,但clustergit實施不同。
我需要這一段時間回來並通過npm提供cli。 https://github.com/kenglxn/gitr/blob/master/README.md
只要執行「npm install -g gitr」,然後你可以使用gitr遞歸地執行任何git命令。
- 1. 限制Git推/拉
- 2. 做git鉤推拉?
- 3. 遞歸地git拉所有的git子模塊只需
- 4. 斯卡拉遞歸
- 5. 斯卡拉遞歸
- 6. git拉/推支持顏色
- 7. 用Git推動和拉動
- 8. 在Git中推拉分支
- 9. Git塔推拉自動化
- 10. 從smartgit Git拉/推錯誤
- 11. Git拉和推不工作
- 12. 難以設置git推/拉
- 13. Git的變基:力推或拉推
- 14. 推理遞歸函數
- 15. Git遞歸mv文件
- 16. 遞歸克隆一個git回購不拉子模
- 17. git clone - 遞歸不拉最新的子模塊
- 18. 值不遞推遞歸陣列
- 19. 尾遞歸斯卡拉
- 20. 斯卡拉的尾遞歸
- 21. 斯卡拉尾遞歸
- 22. 歐拉方法遞歸
- 23. 遞歸GO和斯卡拉
- 24. git檔案導出子模塊(git歸檔所有/遞歸)
- 25. git:擁有2個推/拉回購同步(或1推/拉和1拉同步)
- 26. 斯卡拉尾遞歸爲未尾遞歸
- 27. 遞歸排序在斯卡拉尾部遞歸
- 28. Git - 我可以推/拉,但不克隆
- 29. Git拉最後一次推動完成
- 30. git在推/拉之前輸入密碼
可能重複[Git - 簡單方法拉最新的所有子模塊](http://stackoverflow.com/questions/1030169/git-easy-way-pull-latest-of-all-submodules)。 – 2013-07-10 13:10:12