Допустим, у меня есть настольный компьютер и ноутбук, иногда я работаю на настольном компьютере, а иногда на портативном компьютере.
Каков самый простой способ перемещать репозиторий git туда и обратно?
Я хочу, чтобы репозитории git были идентичными, так что я могу продолжить с того места, где я остановился, на другом компьютере.
Я хотел бы убедиться, что у меня одинаковые ветки и теги на обоих компьютерах.
Спасибо Johan
Примечание: я знаю, как это сделать с помощью SubVersion, но мне любопытно, как это будет работать с git. Если это проще, я могу использовать третий компьютер в качестве классического сервера, с которым могут синхронизироваться два компьютера: s.
Примечание: оба компьютера работают под управлением Linux.
Обновление :
Итак, давайте попробуем XANI : s идея с голым репозиторием git на сервере, и синтаксис команды push от KingCrunch. В этом примере есть два клиента и один сервер.
Итак, давайте сначала создадим серверную часть.
ssh user@server
mkdir -p ~/git_test/workspace
cd ~/git_test/workspace
git --bare init
Итак, затем с одного из других компьютеров я пытаюсь получить копию репозитория с помощью clone:
git clone user@server:~/git_test/workspace/
Initialized empty Git repository in /home/user/git_test/repo1/workspace/.git/
warning: You appear to have cloned an empty repository.
Затем перейдите в это репо и добавьте файл:
cd workspace/
echo "test1" > testfile1.txt
git add testfile1.txt
git commit testfile1.txt -m "Added file testfile1.txt"
git push origin master
Теперь сервер обновлен с помощью testfile1.txt.
В любом случае, давайте посмотрим, сможем ли мы получить этот файл с другого компьютера.
mkdir -p ~/git_test/repo2
cd ~/git_test/repo2
git clone user@server:~/git_test/workspace/
cd workspace/
git pull
И теперь мы можем увидеть тестовый файл.
На этом этапе мы можем отредактировать его, добавив еще немного контента, и снова обновить сервер.
echo "test2" >> testfile1.txt
git add testfile1.txt
git commit -m "Test2"
git push origin master
Затем мы вернемся к первому клиенту и сделаем git pull, чтобы увидеть обновленный файл. И теперь я могу перемещаться между двумя компьютерами, и добавить третий, если хотите.