linux系统中git使用

一、安装git

yum install -y git //安装git软件
git --version //查看git版本
git --help //查看git帮助

二、创建git本地仓库并且初始化

mkdir /gitDir
cd /gitDir //进入目录中
git init //初始化
ls -a //如果有仓库目录下有.git表明git仓库创建并初始化成功

三、提交文件到本地仓库

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 //当前状态是空表示没有文件需要提交

四、git提交本地修改文件

echo "222" >> test.txt
git diff //比较这个版本和上个版本的不同,如果添加了代码前面会有+号
git add test.txt
git commit -m "添加了一行222" //这样就提交修改文件成功了

五、版本回退以及删除文件

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" //这样就删除了

六、git分支

①分支创建:

git checkout -b dev //创建并切换到一个分支,注意是在master目录下创建分支
以上命令相当于以下两条命令
git branch dev; git checkout dev
git branch //查看当前分支
②提交一个文件到分支中:

echo "111" >> new.txt
git add new.txt
git commit -m "提交到trunk中"
③切换到主干上:

git checkout master
④合并分支到master中

git merge dev
⑤删除分支

git branch -d dev

以上都是本地git的操作,下面我们来把代码上传到github上

七、代码上传到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

公钥添加完毕后就可以上传到github上了,使用上图中的命令标红的命令连接到远程,然后push过去就可以了

git remote add origin git@github.com:603771777/gtirepolist.git
git push -u origin master //这样就可以成功推到github上去了

八、他人开发并获取代码
只需要把他自己的公钥添加到github的SSH中,然后输入以下命令进行下载即可

git clone git@github.com:603771777/gtirepolist.git
这样就下载下来了,提交步骤一样,先add,再commit,然后push
注意:提交前最好先从服务器上更新一下自己的代码。不然多人开发时会有冲突

git pull //从服务器更新自己的代码
git push -u origin master //然后再次提交代码(add+commit后再push)