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