두 개의 Git 저장소에 git push하는 방법
PHP中文网
PHP中文网 2017-04-27 09:02:42
0
7
831

각각 웨어하우스 A(github)와 B(JAE's git)가 있고, 로컬 머신은 C입니다.

A와 B 모두 README.md를 초기화했는데, 이는 이 경우 이미 충돌이 발생하여 로그가 일치하지 않음을 의미합니다.

먼저 A창고에서 가져와서 수정해서 C에 제출한 후 원활하게 A에 제출합니다.

이때 C에서 B로 제출하는 방법과 창고 기록 A와 B의 로그를 일치시키려면 몇 번의 작업이 필요한가요?(후자는 일치만 가능합니다)

이 문제를 시도해 보았으나 해결되지 않았습니다.

PHP中文网
PHP中文网

认证高级PHP讲师

모든 응답(7)
某草草

오랜만에 git을 계속 써보니 구체적인 방법도 알게 됐네요.

창고 a가 최종 사용 창고이고 b가 반출 창고라고 가정합니다. 브랜치는 모두 개발입니다

이제 나 자신에게 답장하겠습니다.

첫 번째 단계는 원격 창고를 추가하는 것입니다
git 원격 추가 Origin1 git.a
git 원격 추가 Origin2 git.b

두 번째 단계는 로컬에서 변경된 사항이 없는지 확인하고 원격 창고 주소를 가져온 다음 리베이스하는 것입니다.
git fetch Origin1
git rebase -i Origin1/dev

갈등이 있으면 해결하세요.

git push -f Origin1 dev
git push -f Origin2 dev

완료.

漂亮男人

실제로 초기화 파일을 지우고 다른 원격 웨어하우스의 주소를 로컬 .git/config에 추가할 수 있습니다. 예:
[remote "all"]
url = https://github .com /segment/test.git
url = https://git.oschina.net/segment/test.git
이후 작업은 동일하며 제출된 코드는 두 창고에 동시에 제출됩니다. .

阿神

두 개의 Git 저장소를 사용해 본 적이 없지만 다음과 같이 작동하는 것 같습니다.

1.git 원격 추가 $C 원격 창고 이름 ​​$C 원격 창고 URL

2.C로 가져오기

3. 로컬 병합

4.$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

漂亮男人

브랜치(마스터 브랜치로 가정)의 모든 로그를 동일하게 유지하는 솔루션:

  1. 원격 목록에 B 추가 git remote add jae git://xxxxx@xxxx.git
  2. C가 A를 동기화하고 수정을 완료했다고 가정하면 C를 B에 제출해야 합니다. 이때 제출할 수 없는 충돌 문제를 피하기 위해 강제로 제출해야 합니다. git push jae master:master --force

밀어올리면 C와 B의 로그가 일관되어 작업을 계속할 수 있습니다

모든 브랜치의 일관성을 유지하려면 jae에서 새 프로젝트를 만들고 여기에 C를 푸시하는 것이 좋습니다

도움이 되셨으면 좋겠습니다

伊谢尔伦

원격 저장소에서 가져오기 전에

git stash

그런 다음 끌어오고, 수정하고, 추가하고, 제출하고, 푸시하세요. 또

git stash pop

그런 다음 충돌이 있으면 해결합니다. 다른 원격 창고에서 코드를 직접 가져온 다음 단계별로 수정, 추가, 제출 및 푸시합니다.
모두 추측을 바탕으로 한 것입니다. 구체적이라면 직접 연습해 보세요. 참고용으로만 사용하세요.

Peter_Zhu

여러 원격 저장소를 추가하는 방법은 이미 알고 계시리라 생각하므로 이에 대해서는 다루지 않겠습니다.

간단한 설명: C=A일 때 C 아래 git push -f 'B远程仓库' '分支' 이렇게 하면 B가 A C와 충돌하더라도 강제로 C의 상태를 덮어쓰게 됩니다. 따라서 A=B=C입니다. 그 이후에는 LOG가 일관성을 유지합니다. -f 매개변수는 강제 푸시를 의미합니다.
그냥 시도해 보세요

我想大声告诉你

미러 웨어하우스 구성
1.git remote add --mirror=push --mirror=fetch repoName url
2.git push repoName master

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿