由于使用场景的简单,因此参考下面这位博主做了简单的git服务器配置,所以过程会简化很多,被参考的这位博主功力深厚讲的很清楚,有更深需求的可以看看。
初衷
先聊一下初衷,租了一个阿里云的服务器,同时自己要在多台电脑(不同地点)上开发,因此想要通过git进行代码的同步。所以,使用阿里云服务器作为远程的git代码仓库,另外的电脑进行代码的pull和push. 类似下图,但更简单。 并进行了简单git代码同步的四种场景命令介绍。

一、远程服务器的git仓库配置
1、配置git环境
sudo apt-get install git
sudo apt-get install git-core openssh-server openssh-client
2、新建用户,设置密码
# 新建用户,设置密码
sudo useradd -m john
sudo passwd john
# 添加sudo权限
sudo vi /etc/group # 修改改行为sudo:x:27:zhouxiang,john
# 切换到新用户,并任意指定一下身份
su john
git config --global user.name "young"
git config --global user.email "young@gmail.com"
3、初始化仓库
# 切换到目标目录
mkdir ~/projects
cd ~/projects
# 生成一个服务端的工作路径~/projects/project1.git
git init --bare project1.git # 加.git后缀属于约定俗成,其本质是文件路径。
- bare区别于本地,因为文件是git的虚拟分支存储,非实体可见文件,因此,远程服务端不需要有实体文件。
git init --bare
初始化的版本库,只生成版本历史记录文件/文件夹,不包含实际项目源文件的拷贝。因此,一般在git服务器上创建新的仓库时,使用此命令。git init
初始化的版本库,生成.git目录以及在该目录下的版本历史记录文件/文件夹,且当前目录就是git的work目录,可以进行任何git操作(add、commit、push等)。因此,一般在git客户端初始化并上传新的仓库时,使用此命令。
二、本地端访问
安装git软件,windows的右键菜单有git bash here,即在当前路径下建立git环境。并初始化该路径
1、本地初始化
git init # 对当前路径进行初始化
git config --global user.name "zhangsan"
git config --global user.email "zhangsan@gmail.com"
2、代码同步(四种场景)
以下情景随需要,任选其一
| 场景 | 本地客户端 | 远程git仓库 | 操作 |
|---|---|---|---|
| 情景一 | 无代码 | 有代码 | git clone john@远程ip:/home/projects/project1.git cd project1 |
| 情景二 | 有代码 | 无代码 | cd existing_repo # git库。若未初始化过,需要git init初始化该文件夹 git remote add origin john@远程ip:/home/projects/project1.git git push -u origin --all git push -u origin --tags |
| 情景三 | 有代码 本地需更新 | 有代码 | git checkout master git remote add origin john@远程ip:/home/projects/project1.git git pull origin master # 与远程同步 |
| 情景四 | 有代码 | 有代码 远程需更新 | git checkout master git remote add origin john@远程ip:/home/projects/project1.git git add . git commit -m “my commit” git push origin master |
本地提交代码到远程
# 查看本地分支
git branch -a
git checkout -b local_branch origin/remote_branch # 绑定远程分支
# 提交代码
git add . #将当前目录所有文件添加到git暂存区
git status #【可选】查看当前本地branch的变动
git commit -m "my first commit" #提交并备注提交信息
git push origin master #将本地提交推送到远程仓库
之后的操作参考之前的博文:
版权声明:本文为weixin_43899514原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。