git-репозиторий синхронизация между компьютерами при перемещении?

Допустим, у меня есть настольный компьютер и ноутбук, иногда я работаю на настольном компьютере, а иногда на портативном компьютере.

Каков самый простой способ перемещать репозиторий 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, чтобы увидеть обновленный файл. И теперь я могу перемещаться между двумя компьютерами, и добавить третий, если хотите.

79
задан Johan 14 February 2011 в 07:21
поделиться