У мене є одне сховище, яке я хочу вставити в Bitbucket та GitHub. Для мого сховища життєво важливим є розміщення обох.
Чи є спосіб зробити це в Git?
У мене є одне сховище, яке я хочу вставити в Bitbucket та GitHub. Для мого сховища життєво важливим є розміщення обох.
Чи є спосіб зробити це в Git?
Відповіді:
Ви можете використовувати кілька віддалених сховищ із git. Але вам доведеться натиснути окремо на 2 пульта дистанційного керування, я вважаю.
Наприклад, якщо ваш проект в даний час вказує на github, ви можете перейменувати своє поточне віддалене сховище на github
:
$ git remote rename origin github
Потім можна додати ще одне віддалене сховище, скажімо bitbucket
:
$ git remote add bitbucket git@bitbucket.org:your_user/your_repo.git
Тепер для того, щоб внести зміни до відповідної гілки на github або bitbucket, ви можете зробити це:
$ git push github HEAD
$ git push bitbucket HEAD
Те саме правило застосовується до витягування: вам потрібно вказати, з якого пульта дистанційного керування ви хочете дістати:
$ git pull github your_branch
$ git pull bitbucket your_branch
.ssh/config
файл є ключем до досягнення цієї настройки. Додайте a Host github.com
та a Host bitbucket.org
, щоб визначити, що IdentityFile
використовувати. Тоді ви не отримаєте помилок, яким відмовлено в спробі переключення між bitbucket та github. Сподіваюся, це комусь допомагає.
Так, ти можеш це зробити. Вам не потрібно натискати двічі, а лише один раз, щоб натиснути на обидва віддалених сховища. У мене була та сама проблема раніше, тому я писав, як це зробити тут. Git: натискання / витягнення як з Github, так і з Bitbucket
Кілька ЛЕГКИХ рішень.
Це найпростіше розвести голову, але найбільше зусиль підтримувати.
Ми починаємо з додавання нашого нового пульта дистанційного керування:
$ cd myproject
$ git remote add bitbucket ssh://git@bitbucket.org/user/myproject.git
$ git push bitbucket master
Прямо вперед ні? За винятком звичайно кожного разу, коли ми вносимо будь-які зміни, нам потрібно натиснути як на своє початкове “походження”, так і на наш новий віддалений “бітбетк”:
$ git push origin master
$ git push bitbucket master
Це не значні накладні витрати, але я впевнений, що з часом це натертиметься. Або ви можете створити `псевдонім gpob =" git push master master && git push bitbucket master ".
За допомогою цього методу ми збираємось додати додаткову URL-адресу до нашого існуючого віддаленого “джерела”:
$ cd myproject
$ git remote set-url --add origin ssh://git@bitbucket.org/user/myproject.git
$ git push origin master
Everything up-to-date
Everything up-to-date
Набагато менше зусиль!
Звичайно, у срібної підкладки є хмара, і в цьому випадку, це те, що хоча ми можемо переходити до кількох URL-адрес одночасно, ми можемо отримувати лише з оригінального “джерела” (ви можете змінити це, але це поза рамками для цієї публікації ).
Нарешті, щоб побачити, з якого пульта буде завантажено:
$ git remote -v show
Я також писав про це в блогах .