2014-06-20 17 views
10

Nie jestem ekspertem od GIT, więc potrzebuję pomocy w tej konfiguracji dla projektu, nad którym pracuję. Więc w zasadzie to jest to, czego potrzebuję:Złożona konfiguracja dla GIT: widelec od Github do Bitbucket, PUSH do Bitbucket tylko

  1. Utwórz widelec od Githuba do Bitbucket, jak? to gwarancja, że ​​git pull cały czas na CORE zaktualizowany o najnowsze zmiany z głównego projektu Github?
  2. Umożliwia PUSH tylko do repozytorium Bitbuket, czy to możliwe? W jaki sposób?

Używam SmartGit jako głównego klienta, ale również mam linię poleceń git.

Każda pomoc w tej sprawie?

Odpowiedz

14

Po utworzeniu pustej BitBucket repo, można

git clone https://github.com/user/yourRepo 
cd repo 
git remote rename origin upstream 
git remote add origin https://[email protected]/yourAccount/yourRepo 
git push --mirror 

Następnie upewnij master będzie ciągnąć z bitbucket repo (upstream to nazwa zdalnego nawiązując do oryginalnego GitHub repo)

git checkout master 
git branch -u origin/master 
git push.default matching 

git push będzie apelować do repo bitbucket (origin), ale trzeba git pull upstream ciągnąć/aktualizacji z oryginalnego gitHub repo.

Domyślnie będziesz pracował z BitBucket (tak jak wszyscy inni twórcy klonujący to nowe repozytorium), ale programista może w dowolnym momencie dodać odniesienie (zdalne) do pierwotnego repozytorium GitHub.

+0

To podejście nie zadziała, ponieważ istnieją inni programiści, którzy pracują ze mną i muszą pobrać także z repozytorium Bitbucket. Chodzi o to, aby zaktualizować repozytorium Bitbucket z repozytorium Github, ale zostało ono wycofane z repozytoriów Bitbucket. Jeśli nie rozumiesz, daj mi znać i tworzę prosty diagram ilustrujący to, czego potrzebuję. – ReynierPM

+1

@ReynierPM OK, to jest jeszcze łatwiejsze. Edytowałem odpowiedź. – VonC

+1

@VonC błąd lustra w odpowiedzi to "git remote add origin ..." – psk

Powiązane problemy