CentOS下git命令行的操作,centosgit命令行取某个标签的版本,就


之前使用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 文件名

二:连接到远程仓库,这里与GitHub连接


(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>

四:标签Tag,发布版本时,通常先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本。取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。


(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给官方仓库来贡献代码。

六:自动以git


(1)让Git显示颜色git config --global color.ui true


(2)配置别名

git config --global alias.co checkout

git config --global alias.ci commit

git config --global alias.br branch

1

2

3

1

2

3

之后就可以用co代替checkout,ci代替commit,br代替branch了

相关内容

    暂无相关文章