Git项目的在多台电脑之间的同步,最常见的方式是使用提供Git服务的服务器,例如Gitlab,码云,或者自己在服务器上部署的Gitlab。
如果考虑到安全、部署复杂程度等,不想使用联网服务,那么最简单的办法是把 Git 项目拷贝到U盘上,再拷贝到其他电脑上。但是这种方式很容易让文件版本出现差异。更好的方式是把git项目的remote设置为本地文件系统上的一个位置。
以下介绍具体操作方法:
本地remote端设置
以mac上连接的移动硬盘为例,其位置为/Volumes/TOSHIBA\ EXT
,在其中的/Volumes/TOSHIBA\ EXT/git_remote
文件夹中建立bare 类型的项目.
cd /Volumes/TOSHIBA\ EXT/git_remote
git init --bare test.git
以上操作会建立/Volumes/TOSHIBA\ EXT/git_remote/test.git
文件夹。这等同于使用Github时使用的https://github.com/neovim/neovim.git
格式的地址。
本地项目设置
本地项目的所有命令都与使用提供Git服务的服务器时一致,只是remote需要写成本地路径。
示例如下:
cd ~/tmp
git clone /Volumes/TOSHIBA\ EXT/git_remote/test.git
echo "hello this is a test" > README.md
git add .
git commit -m "Initial Commit"
git push origin master
输出结果:
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 265 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To /Volumes/TOSHIBA EXT/git_remote/test.git
* [new branch] master -> master
如果是已有项目:
git remote add local /Volumes/TOSHIBA\ EXT/git_remote/test.git
注意
在cygwin中,如果硬盘在系统中盘符是F:
,那么remote的指定应该写为git remote add local F:/git_remote/test.git