1. 安装git:
$ yum install git # centos7
说明:git是分布式的,每一个安装了git的电脑,既是客户端,也是服务器,git与git之间可以相互通信.安装成功后,可以使用:git --version 命令查看是否安装成功,以及git的版本号。
2.创建git用户及权限,进入home目录:
$ adduser username(自定义)
说明:创建一个新的username用户来作为今后提交代码的用户,不建议用root用户。在/home目录下多了一个username目录,禁止用户通过ssh连接到服务器上,我们通过编辑一个权限文件来处理:
$ vi /etc/passwd
找到类似于
username:x:1001:1001:,,,:/home/git:/bin/bash
这样的行,末尾的/bin/bash,就是允许ssh连接操作的权限,我们把它改为/user/bin/git-shell,结果如下:
username:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
我们还得给git分配一个密码,执行:
$ passwd username
这个密码用在你后面提交代码的时候使用。
3. 公钥配置:
客户端与服务器需要一个证书进行验证。操作方法很简单,首先在客户端电脑上生成自己的一个公钥:
$ cd ~
$ ssh-keygen -t rsa
按照命令行提示,公钥id_dsa.pub所在的目录默认:windows在”C:/User/username/.ssh”目录下,cd进去。
$ cd .ssh
$ vi id_rsa.pub
把所有的内容复制下来。接下来,我们去回服务器上面操作:
$ cd /home/username/
$ mkdir .ssh
$ cd .ssh
$ vi authorized_keys
我们自己创建authorized_keys之后,把刚才复制下来的公钥粘贴进去,ok了,保存退出。
4. 初始化一个git仓库:
git仓库我们默认放到/var路径下面,如下所示:
$ cd /var
$ mkdir mygits
$ chown -R username:username mygits
$ chmod 777 mygits
$ cd mygits
$ mkdir test.git
接下来,我们用git命令初始化一个仓库:
$ git init --bare test.git
初始化完成之后,这个空的仓库就OK了,修改文件的权限:
$ chown -R username:username test.git
$ chmod 755 test.git
5. 克隆测试
回到客户端的电脑上,我们通过克隆来测试仓库是否可以使用:
$ git clone username@202.106.0.20:/var/mygits/test.git
如提示你输入username的密码,输入进去,然后提示你克隆了一个空白的版本库。说明服务器已经OK了。
6. 客户端基本项目配置和项目代码管理:
以windows客户端为例,下载git windows版本:
1. 安装git,并自定自定义安装的路径,最好不能带有中文空格路径。
2. 打开按照好的Git Bash控制台程序,通过以下命令生成公私:
$ ssh-keygen -t rsa
公私路径以上内容有提到,这里不多说。
3. 新建一个存放项目代码的文件夹,如:E:\Projects
$ cd e:
$ mkdir Projects
$ cd Projects
4. 使用git命令克隆linux服务器上新建的test.git空的仓库到本地:
$ git clone username@202.106.0.20:/var/mygits/test.git
克隆成功后,本地E:\Projects\路径下或多了一个test的版本库文件夹。
5. 我们可以把自己的项目放到test文件夹下,如放入一个文件myjava.java文件。
6. 使用git的命令进行查看和操作:
$ git add myjava.java // 将提交的文件添加到暂存区
$ git commit -m '提交了myjava.java文件' // 提交文件到本地仓库中。
$ git push // 将本地库推送到远程版本库中,进行同步。
到这里一次完整的代码提交同步就算完成了。
7. 一下汇总一下常用的git命令