整理一下厉害的
Git
命令,感觉这个东西功能确实强大,用起来很方便,但是需要记住的命令也很多,并且有很多小技巧,种类繁杂,让人既恨有爱,跟编辑器Vim
一样。。
一、vim
跳到文件头和文末结尾
gg : 跳转到文件头
Shift+g : 跳转到文件末尾
时间宝贵,只能复制+粘贴,若图片无法显示或排版混乱,请访问elesos.com
查找原文。这种命令感觉很多都是通用的。
参考网址:
https://www.cnblogs.com/elesos/p/5924570.html
https://blog.youkuaiyun.com/hshl1214/article/details/50635464
二、怎么使用bash或者vim以及git命令
bash
是linux
中经常使用的命令,也可以是一个文件bashrc
,source
等等以及shell
,./
等等命令都会相互引用,已经做了一定的内联封装,同时又保持各自命令的独立性了,当然也可能自己开了一套命令系统哈哈,此外各种默认机制也是会有的,优先级,可读可写,权限啥啥的。
git
命令在windows
,也就失眠我贴的两张图,可以说是建立在vim
上的,在装过程中你也可以选择其他的,它的命令跟vim
很像,而且一些默认设置也很像,当然也做了一些简化,比如命令跳转,自动wq
,shift g
,gg
等等,整体风格还是很像的。。
三、Git使用第一步:git 拉取历史版本
下载你的Git
软件,有些系统(ubuntu
等)或者软件(VS code
)会自带,抛弃你的图形化界面与版本文件夹吧。。
git clone http://127.0.0.1/git/yfb_crm.git
git checkout 9ae2c2ce4ad80c87615965f8036fe01c661e646b
具体操作如下:
1、使用gitbash
进入git
命令行,查看commit
记录。操作如下:
2、git log
找到你想提取的目标版本,复制对应的SHA
值。
3、新建一个分支,操作如下:
git branch 新分支名 SHA值
4、切换到新的分支,操作如下:
git checkout 新分支名
接下来,IDE(AndroidStudio)
中的代码会自动切换成新分支中的代码,也就是历史版本的代码。
在上述的操作中,我们新建了一个分支用来拉取历史版本并进行操作(修改代码)。而我们当前的代码,也就是主分支中的代码不受任何影响。
结束语
当初学习
git
的时候,连最基本的add和commit
都分不清。而且是为了养成写commit
的习惯,以便解决协同开发时产生的冲突。所以没有深入的去学习git
,学了点皮毛就开始用。
不过最难的就是开始了。最难的一步都踏出去了,还有什么可以阻止我呢?往后的日子里,我将深入学习git
作为技术储备。
参考网址:
https://blog.youkuaiyun.com/wasd986523/article/details/89397913
四、git 如何获取指定 tag 代码
第一种方法:
步骤:
1、查看本地git仓库下的tag
git tag
2、若本地没有仓库代码,可以选择拉去
git clone git@xxx.xxx:/progject.git
而且这个.git
需要自己加上去,在网站上不会主动显示这种的,只有git
命令才会识别.git
,而且感觉现在很多github
工程已经可以设置多重域名,就像豪哥自己的与tensorlayer
自己的变更(难道是创建者,邀请人,开发者的关系嘛)。还有就是一些文档可以使用md或者rst等等,以及documentation
也可以使用org
与readthedocs
混合使用,双重命名,是同一个网站,但并不是超链接。
3、切换到某一个tag下
git checkout tag_name
4、提示:
当前处于一个“detached HEAD
” 状态 ,每一个 tag
就是代码仓库中的一个快照,如果你想编辑此tag
下的代码,上面的方法就不适用了.你需要把 tag
快照对应的代码拉取到一个分支上。
注意命令行title
的改变,说的一是应该跟上面讲的差不多。
例如想编辑 v1.0
的tag
代码,那么可以选择如下操作
git checkout -b new_branch v1.0
git checkout -b [分支名称] [tag标签名称]
第二种方法:
第二种直接clone
注意它的默认分支与版本。多去看看网站上的各个按钮的功能。。
我们需要先找到Branch
然后点击进去,有一个Tag
的选项,然后选择对应的Tag
,再clone
就ok
了哦
不得不说git真是很好用啊,而且它的网站也做得越来越智能化,功能化了。
参考网址:
https://blog.youkuaiyun.com/liyuali2012/article/details/82190696
https://blog.youkuaiyun.com/weixin_34270606/article/details/86000298
https://blog.youkuaiyun.com/xiaozhaorui/article/details/78798689
https://blog.youkuaiyun.com/DinnerHowe/article/details/79082769(远程分支是个啥。。)
https://blog.youkuaiyun.com/zhang_guyuan/article/details/77160387
https://blog.youkuaiyun.com/weixin_41929524/article/details/94589105(再次说明git很强大)
五、Git 获取指定历史版本源代码
(根据
SHA
码(好像是哈希值,一种编码,提高效率与安全,据说不可逆,保证文件一致性与安全性,这里代表提交历史)
bash
(自带)或者其他命令行,vim
,powershell
(环境变量)下执行:
git clone http://XXXX/XX.git
git checkout fd9269a
并且往往只需要前几位就可以,以及后面要讲的按时间搜索,也是可以只输入一部分时间,Git
好智能啊。。
参考网址:
https://blog.youkuaiyun.com/weixin_30552811/article/details/98773765
https://blog.youkuaiyun.com/li_csdn_/article/details/80818877
https://blog.youkuaiyun.com/qq_39704803/article/details/81098540
https://blog.youkuaiyun.com/M_Eve/article/details/84327219(内容更丰富)
https://blog.youkuaiyun.com/wun123/article/details/96309406(回滚是个啥)
六、根据时间或者关键字获取commit或者查看git log
凡是你能想到的功能,往往一个软件开发者也会想到。。
https://blog.youkuaiyun.com/weixin_34054866/article/details/91665854
https://blog.youkuaiyun.com/zhezhebie/article/details/94546790
https://blog.youkuaiyun.com/qq_27517377/article/details/84937661
终极学习教程
七、如何commit,pull,push,merge,branch等等
未完待续…