第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將現(xiàn)有的Git存儲庫導(dǎo)入另一個?

如何將現(xiàn)有的Git存儲庫導(dǎo)入另一個?

Git
狐的傳說 2019-08-05 16:49:41
如何將現(xiàn)有的Git存儲庫導(dǎo)入另一個?我在一個名為XXX的文件夾中有一個Git存儲庫,我有第二個名為YYY的 Git存儲庫。我想將XXX存儲庫作為名為ZZZ的子目錄導(dǎo)入YYY存儲庫,并將所有XXX的更改歷史記錄添加到Y(jié)YY。文件夾結(jié)構(gòu)之前:XXX  |- .git  |- (project files)YYY  |- .git  |- (project files)文件夾結(jié)構(gòu)后:YYY  |- .git  <-- This now contains the change history from XXX  |-  ZZZ  <-- This was originally XXX       |- (project files)  |-  (project files)可以這樣做,還是我必須使用子模塊?
查看完整描述

3 回答

?
慕哥6287543

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個贊

如果您想保留第二個存儲庫的確切提交歷史記錄,因此也保留了將來輕松合并上游更改的功能,那么這就是您想要的方法。它導(dǎo)致子樹的未修改歷史記錄被導(dǎo)入到您的倉庫中,加上一個合并提交將合并的存儲庫移動到子目錄。


git remote add XXX_remote <path-or-url-to-XXX-repo>

git fetch XXX_remote

git merge -s ours --no-commit --allow-unrelated-histories XXX_remote/master

git read-tree --prefix=ZZZ/ -u XXX_remote/master

git commit -m "Imported XXX as a subtree."

您可以跟蹤上游更改,如下所示:


git pull -s subtree XXX_remote master

Git在進(jìn)行合并之前會根據(jù)其自身的位置計算出來,因此您無需在后續(xù)合并中指定前綴。


2.9之前的Git版本:您不需要將--allow-unrelated-histories選項(xiàng)傳遞給git merge。


使用read-tree和跳過該merge -s ours步驟的另一個答案中的方法實(shí)際上與使用cp復(fù)制文件并提交結(jié)果沒有什么不同。


查看完整回答
反對 回復(fù) 2019-08-05
?
炎炎設(shè)計

TA貢獻(xiàn)1808條經(jīng)驗(yàn) 獲得超4個贊

git-subtree是一個腳本,專門用于將多個存儲庫合并為一個同時保留歷史記錄(和/或拆分子樹歷史,盡管這似乎與此問題無關(guān))的用例。它自1.7.11發(fā)布以來作為git樹的一部分進(jìn)行分發(fā)。

要將<repo>版本的存儲庫合并<rev>為子目錄<prefix>,請使用git subtree add以下命令:

git subtree add -P <prefix> <repo> <rev>

git-subtree 以更加用戶友好的方式實(shí)現(xiàn)子樹合并策略

對于您的情況,在存儲庫YYY中,您將運(yùn)行:

git subtree add -P ZZZ /path/to/XXX.git master


查看完整回答
反對 回復(fù) 2019-08-05
  • 3 回答
  • 0 關(guān)注
  • 854 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號