假设我有台台式电脑和笔记本电脑,有时候我会在台式电脑工作,有时候我会在笔记本电脑工作。
最简单的方法是如何在这两台电脑之间移动git仓库呢?
我想让git仓库保持一致,以便我可以在另一台电脑上继续工作。
我希望确保两台计算机都有相同的分支和标签。
谢谢 Johan
注意:我知道如何使用SubVersion进行此操作,但我很好奇如何使用git。如果更容易的话,我可以使用第三台计算机作为传统服务器,让这两台电脑进行同步。
注意:这两台计算机都运行着Linux。
更新:
那么我们来试试XANI的想法,使用一个裸的git仓库作为服务器,并使用KingCrunch的push命令语法。在这个示例中,有两个客户端和一个服务器。
首先让我们创建服务器部分。
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命令以查看更新的文件。 现在我可以在两台计算机之间来回移动, 如果需要,还可以添加第三台计算机。