2013-02-28 17 views
6

Bitbucket posiada narzędzie importera do importowania repozytoriów ze zdalnych lokalizacji, ale obsługuje tylko protokół git://. Nasze istniejące repozytoria znajdują się na maszynie kontrolowanej przez firmę za firewallem, którego nie mogę zmienić, a git:// jest niedostępna. Muszę przenieść repozytoria z naszej maszyny firmowej do bitbucketu, zachowując całą historię i szczegóły z oryginalnego repozytorium w stanie nienaruszonym.Dwustopniowy import git przez ssh

Czy jest jakiś sposób, w jaki mogę to zrobić, klonując oryginalne repozytorium przez ssh do lokalnego komputera, a następnie przesyłając to repozytorium do nowo-istniejącego repozytorium na bitbucku? Czy w ten sposób utracę historię lub dane?

(mam nadzieję na odpowiedź, która nie jest bitbucket specyficzny, ale będzie działać na „ruchome” repozytorium git w każdym przypadku).

Odpowiedz

8

będziemy chcieli mieć pewność, masz całą historię. Możesz to zrobić, najpierw wykonując pełny lokalny nagi klon.

git clone --mirror git://LOCAL_URL/somerepo.git 

Następnie dodaj pilota i naciśnij, jak wskazał Timothy. Prawdopodobnie jednak chcesz użyć czegoś innego niż źródło dla zdalnego aliasu.

git remote add bitbucket ssh://[email protected]/someuser/somerepo.git 
git push -u bitbucket --all 

ten może być stosowany do wszelkich usług hostingowych Git. Po prostu zastąp zdalny URL dowolną rzeczą.

5

Z tego co wiem, klonowanie całego repo i popychanie działa . Bitbucket ma nawet polecenia dla Ciebie:

cd /path/to/my/repo 
git remote add origin ssh://[email protected]/someuser/somerepo.git 
git push -u origin --all # to push changes for the first time 
+0

Użyj polecenia klonowania, jak sugerował Marcus, jeśli chcesz całą historię. – Joseph238

-1

Co sprawia, że ​​myślisz, że obsługujemy tylko protokół git: //? Wspieramy inteligentne protokołu HTTP i tak na przykład można po prostu importować https://github.com/jquery/jquery

Więc jeśli repo jest dostępny z Internetu i nie HTTP (S) wtedy nie powinno być problemu, korzystając z importera (co robi prawidłowego klonu i czy przechowuje historię).