-
用git --version命令检查是否已经安装html
-
在CentOS5的版本,因为yum源中没有git,因此须要预先安装一系列的依赖包。在CentOS6的yum源中已经有git的版本了,能够直接使用yum源进行安装。git
-
可是yum源中安装的git版本是1.7.1,Github等须要的Git版本最低都不能低于1.7.2 。因此咱们通常不用上面的方法,而是下载git源码编译安装。github
END - 编译安装git
用git --version命令检查是否已经安装html
在CentOS5的版本,因为yum源中没有git,因此须要预先安装一系列的依赖包。在CentOS6的yum源中已经有git的版本了,能够直接使用yum源进行安装。git
可是yum源中安装的git版本是1.7.1,Github等须要的Git版本最低都不能低于1.7.2 。因此咱们通常不用上面的方法,而是下载git源码编译安装。github
首先更新系统shell
yum -y updateapache
更新完成以后有6.5变成6.7了vim
安装依赖的包bash
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker服务器
下载git源码并解压ssh
$ wget https://github.com/git/git/archive/v2.3.0.zipcurl
$ unzip v2.3.0.zip
$ cd git-2.3.0
编译安装:
将其安装在“/usr/local/git”目录下。
make prefix=/usr/local/git all
make prefix=/usr/local/git install
由于服务器时间不对编译的过程当中报错以下图,使用ntpdate自动校订系统时间。报错“Writing perl.mak for Git make[2]: *** [perl.mak] Error 1”,请重启apache服务,service httpd restart。
编译完成以后使用git --version 查看git版本,竟然仍是1.7.1,这是由于它默认使用了"/usr/bin"下的git。
你能够用下面的命令查看git所在的路径:
$ whereis git
git: /usr/bin/git /usr/local/git /usr/share/man/man1/git.1.gz
咱们要把编译安装的git路径放到环境变量里,让它替换"/usr/bin"下的git。为此咱们能够修改“/etc/profile”文件(或者/etc/bashrc文件)。
vim /etc/profile
而后在文件的最后一行,添加下面的内容,而后保存退出。
export PATH=/usr/local/git/bin:$PATH
不想重启系统,使用source命令当即生效
source /etc/profile
而后再次使用git --version 查看git版本,发现输出2.3.0,代表安装成功。
http://www.javashuo.com/article/p-ptfagpkp-ek.html
2、建立git本地仓库而且初始化
mkdir /gitDir
cd /gitDir //进入目录中
git init //初始化
ls -a //若是有仓库目录下有.git代表git仓库建立并初始化成功
1
2
3
4
3、提交文件到本地仓库
echo "11111" >> test.txt
git add test.txt //添加到暂存区中
git status //查看当前的状态
git commit -m "添加了一行111" test.txt
上条命令会失败,由于没有指定用户和用户的邮箱
git config --global user.email "jack@163.com" //写上本身邮箱
git config --global user.name "jack" //写上用户名
git commit -m "添加了一行111" test.txt //再次提交
git status //当前状态是空表示没有文件须要提交
1
2
3
4
5
6
7
8
9
4、git提交本地修改文件
echo "222" >> test.txt
git diff //比较这个版本和上个版本的不一样,若是添加了代码前面会有+号
git add test.txt
git commit -m "添加了一行222" //这样就提交修改文件成功了
1
2
3
4
5、版本回退以及删除文件
git reset --hard HEAD^ //回退到上个版本
git reset --hard HEAD~n //回退到上n个版本
git reflog //查看全部的提交历史
git reset --hard 0f21d39 //回退到指定版本
git checkout -- test.txt //修改了但不想提交用此命令
git reset HEAD test.txt //若是已经add但未提交可使用此命令撤回而后用git checkout -- test.txt丢弃工做区的更改
git rm test.txt
git commit test.txt -m "删除test.txt" //这样就删除了
1
2
3
4
5
6
7
8
6、git分支
①分支建立:
git checkout -b dev //建立并切换到一个分支,注意是在master目录下建立分支
以上命令至关于如下两条命令
git branch dev; git checkout dev
git branch //查看当前分支
1
2
3
4
②提交一个文件到分支中:
echo "111" >> new.txt
git add new.txt
git commit -m "提交到trunk中"
1
2
3
③切换到主干上:
git checkout master
1
④合并分支到master中
git merge dev
1
⑤删除分支
git branch -d dev
1
以上都是本地git的操做,下面咱们来把代码上传到github上
7、代码上传到github中
首先在github中建立一个仓库用来保存咱们的项目,在上篇git的使用中提到过在此很少作描述,新建完仓库后出现下图信息
ssh-keygen -t rsa -f /root/.ssh/id_rsa -C "603771777@qq.com" -N '' //生成一个密钥对,此处为了免密登陆到github
cat /root/.ssh/id_rsa.pub //将屏幕上输出的公钥拷贝到github上,点击setting,SSH and GPG keys,而后New SSH key
1
2
公钥添加完毕后就能够上传到github上了,使用上图中的命令标红的命令链接到远程,而后push过去就能够了
git remote add origin git@github.com:603771777/gtirepolist.git
git push -u origin master //这样就能够成功推到github上去了
1
2
8、他人开发并获取代码
只须要把他本身的公钥添加到github的SSH中,而后输入如下命令进行下载便可
git clone git@github.com:603771777/gtirepolist.git
1
这样就下载下来了,提交步骤同样,先add,再commit,而后push
注意:提交前最好先从服务器上更新一下本身的代码。否则多人开发时会有冲突
git pull //从服务器更新本身的代码
git push -u origin master //而后再次提交代码(add+commit后再push)