这篇文章主要介绍了CentOS下Git操作命令整理,需要的朋友可以参考下
之前使用Github都是使用IDE中的一些git插件,一直想学学git命令行的操作,我是在我CentOS做的,Windows可以安装git shell
(1) 新建一个文件夹,做测试
(2)将此目录变为Git可管理的仓库git init
(3)目录下会多一个.git的文件,使用ls命令查看不到,因为它是默认隐藏的,可以使用ls -ah
(4)新建一个readme.txt的文件,并且输入一些内容echo > "xxxx" >readme.txt
(5)添加文件
git add readme.txt
(6)配置一下git的信息
git config --global user.email"邮箱"
git config --global user.name "用户名"
(7)提交git commit -m "说明文字"
(8)查看git的日志git log或者git log --pretty=oneline只显示简要的信息
(9)回撤版本git reset --hard HEAD^,回撤几次就是HEAD^^^^中的^几次(10)查看版本号git reflog(11)回撤到对应的版本号:git reset --hard 版本号(12)删除已经提交的文件git rm 文件名
(1)首先需要创建SSH Key,ssh-keygen -t rsa -C "youremail@example.com",然后一路回车下去
(2)在.SSH目录下会有两个文件,一个是id_rsa,另外一个是id_rsa.pub,对应的一个是私钥,一个是公钥(3)将公钥里的内容添加到你的GitHub账号下
(4)新建一个仓库,这里命名为githubTest
它会有对应的提示信息
(5)按上述提示执行命令,关联仓库git remote add origin git@github.com:xxxx/xxxxx.git,将本地文件push上去git push -u origin master第一次push加上-u参数,以后再push就直接push就可以了
(6)在GitHub上就会看到push上去的内容了
(7)克隆仓库,git clone git@github.com:xxxx/xxxxx.git,这是通过SSH的方式克隆的,还有https的方式
文件克隆结果
(1)创建分支并切换到创建的分支:git checkout -b dev相当于git branch devgit checkout dev
(2)切换分支git checkout xxx
(3)查看分支git branch*指向当前分支
(4)合并分支测试(没有冲突),在dev分支下,readme.txt中增加文字
git add然后git commit
切换到主分支:git checkout master,查看内容还是之前的内容
然后合并dev分支:git merge dev
查看内容已经是最新的了
现在可以删除dev分支了:git branch -d dev
(5)冲突测试:1. 新建一个分支develop,在分支下在readme.txt最后一行加入如下
2. 然后git addgit commit
3. 切换主分支git checkout master
4. 在readme.txt中最后一行加入如下,同样git addgit commit
5. 然后merge develop分支git merge develop,会发现提示有冲突
6. 在readme.txt中会标出冲突的内容,手动修改,合并
会发现内容正常
7. 查看合并的图git log --graph --pretty=oneline
(6)强行删除分支git branch -D <name>
(1)带有说明的标签,用-a指定标签名,-m指定说明文字,后面指定commit id,如果没有指定就是最新commit的git tag -a v0.1 -m "version 0.1 released" 3628164
(2)推送某个标签到远程,使用命令git push origin <tagname>(3)本地删除标签git tag -d xxxx
(4)如果已经push到远程仓库中了,需要先删除本地git tag -d xxx,然后删除远程的git push origin :refs/tags/xxx(5)推送全部未推送过的本地标签git push origin --tags
(1)在GitHub上,可以任意Fork开源仓库;(2)自己拥有Fork后的仓库的读写权限;(3)可以推送pull request给官方仓库来贡献代码。
(1)让Git显示颜色git config --global color.ui true(2)配置别名
之后就可以用co代替checkout,ci代替commit,br代替branch了