2014-01-07 2 views
4

У меня есть код, который я еще не совершил, и не нажал на ветку. Я работаю на локальном компьютере, потому что код еще не работает. Однако я просто хочу переместить этот код с одного компьютера на другой, не затрагивая ветку. Как мне это сделать? Например, мой код находится на компьютере A, и я работаю с веткой под названием «develop», с которой я извлекаю и обновляю код. Я не хочу ничего менять в разработке, но я хочу переместить код, который я написал компьютеру B. Как мне это сделать? Если бы кто-нибудь мог помочь, это было бы здорово. Благодаря!Передача кода с одного компьютера на другой через Git

+2

Создайте новую ветку «развить», зафиксируйте там изменения и нажмите новую ветвь, потяните новую ветку на компьютер B. Когда закончите, слейте обратно в 'develop'. – Joe

ответ

4

Я бы создал новую ветку и нажал ее на эту ветку.

git branch incomplete-code 
git checkout incomplete-code 
git commit -a 
git push origin incomplete-code 

Вы можете клонировать репозиторий на собственном компьютере и работать на неполный кода филиала

git clone <repo address> 
git checkout incomplete-code 

После того, как код завершения, вы можете объединить ветвь как таковой

git checkout develop 
git merge incomplete-code 

Могут быть разные способы сделать это, но это тот, о котором я могу думать.

+0

Спасибо, это работает. Но вам нужно сделать «git fetch», прежде чем вы выполните «git checkout неполный-код», иначе ваш второй компьютер не знает о недавно созданном репозитории на сервере. – Siddhartha

1

Для выполнения переноса с использованием git вы должны зафиксировать изменения локального репо на компьютере A. Если вы не хотите этого делать, вы должны просто скопировать измененные файлы с компьютера A на компьютер B за пределами мерзавец.

Если у обоих компьютеров есть доступ к центральному репозиторию git, вы можете сделать так, как предлагают другие, и передать код новой ветке на компьютере A, надавить новую ветвь до центрального репо, а затем потянуть новую ветку вниз компьютер B.

Если компьютер B способен вытаскивать непосредственно с компьютера A, то вы можете передать код новой ветке (или даже существующей ветке «развить» на компьютере A, просто не нажимайте эту фиксацию на любое лобковое репо), а затем на компьютере B вытащить это сообщение непосредственно с компьютера A.

Если компьютеры не подключены, кроме как через sneakernet, вы можете использовать git bundles для передачи сообщений tted код с компьютера A на компьютер B.

Вы также можете зафиксировать код на компьютере A, используя git format-patch, чтобы создать файл исправления, скопировать патч на компьютер B и использовать git apply для применения патча.

Смежные вопросы