記一次Git異常操做:將多個repository合併到同一repository的同一分支

爲何會有這需求呢,由於特麼需求變更了好幾回。。。

1. 現狀

當前有三個Repo:git

A: workspace/A/.git
B: workspace/B/.git
C: workspace/C/.git

因爲只有我一我的開發,而且工程並不複雜,所以全部的Repo都只有一個分支【惟一的優勢】。fetch

目標是但願搞成下面這樣,且不丟失logspa

workspace/Total/.git
workspace/Total/A
workspace/Total/B
workspace/Total/C

2. 過程

2.1

cd workspace
mkdir Total
cd Total
git init

2.2

mkdir A
git pull workspace/A
# 而後手動把全部A的文件cp到A文件裏
git add -A
git commit -m 'merge A'

2.3

mkdir B
git fetch workspace/B
git merge FETCH_HEAD
# 而後手動把全部B的文件cp到B文件裏
git add -A
git commit -m 'merge B'

2.4

mkdir C
git fetch workspace/C
git merge FETCH_HEAD
# 而後手動把全部C的文件cp到C文件裏
git add -A
git commit -m 'merge C'

Tips

pull == fetch + mergecode

相關文章
相關標籤/搜索