分别有仓库 A(github),B(JAE 的 git),本机为C。
A, B都进行了 README.md 的初始化,就是说,这个情况下,已经存在冲突了,log不一致。
先从仓库A获取下来,C 修改完毕提交,顺利提交至A,
此时 如何从 C 提交到B,需要进行多少操作,使得仓库记录 A 和 B 的log一致(后面一致即可)?
这个问题我尝试过,没解决。
某草草2017-04-27 09:04:42
久しぶりにgitを使い続けて、具体的な方法も分かりました。
倉庫aを最終使用倉庫、bを放出倉庫とする。ブランチはすべて開発です
今度は自分自身に返信します:
最初のステップはリモート倉庫を追加することです
gitリモート追加origin1 git.a
gitリモート追加origin2 git.b
2 番目のステップは、ローカルで何も変更されていないことを確認し、リモート ウェアハウスのアドレスを取得してからリベースすることです。
git fetch 原点 1
git rebase -i Origin1/dev
競合がある場合は、それを解決します。
git Push -f Origin1 dev
git Push -f Origin2 dev
完了
漂亮男人2017-04-27 09:04:42
実際、次のように、初期化ファイルをクリアして、別のリモート ウェアハウスのアドレスをローカルの .git/config に追加できます:
[remote "all"]
url = https://github.com/segment/test .git
url = https://git.oschina.net/segment/test.git
以降の操作は同じです。コードを 2 つのウェアハウスに同時に送信します。
阿神2017-04-27 09:04:42
2 つの Git リポジトリの状況は試していませんが、私の推測では次のようになります。
1.git リモート追加 $C リモート ウェアハウス名 $C リモート ウェアハウス URL2.C にフェッチ
3. ローカルマージ
4.push $C リモートウェアハウス名 $プロジェクト名
参考: http://www.git-scm.com/book/zh/Git-%E5%9F%BA%E7%A1%80-%E8%BF%9C%E7%A8%8B%E4%BB %93%E5%BA%93%E7%9A%84%E4%BD%BF%E7%94%A8
漂亮男人2017-04-27 09:04:42
ブランチ (マスター ブランチであると想定) のすべてのログを同じに保つ解決策:
押し上げた後、CとBのログに一貫性があり、その後操作を続行できます
すべてのブランチの一貫性を保ちたい場合は、jae で新しいプロジェクトを作成し、C を押し上げることをお勧めします
お役に立てば幸いです
伊谢尔伦2017-04-27 09:04:42
リモート リポジトリからプルする前に、まず
git スタッシュ
その後、プル、変更、追加、送信、プッシュします。またまた
git スタッシュポップ
次に、競合がある場合は解決します。競合がない場合は、別のリモート ウェアハウスからコードを直接プルし、段階的に変更、追加、送信、プッシュします。
すべて推測に基づいていますが、具体的な場合は自分で実践してください。参照のみ。
天蓬老师2017-04-27 09:04:42
複数のリモート リポジトリを追加する方法はすでにご存知かと思いますので、ここでは説明しません。
簡単に言うと、C=A の場合、C の下にあります git push -f 'B远程仓库' '分支'
このように、B は A C と競合しますが、C の状態は強制的に上書きされます。 したがって、A=B=Cとなります。 その後、LOG は一貫したものになります。 -f パラメータは強制プッシュを意味します。
試してみてください
我想大声告诉你2017-04-27 09:04:42
ミラー ウェアハウスを設定するだけです
1.git リモート add --mirror=push --mirror=fetch repoName url
2.git Push repoName master