赞
踩
在了解Git命令语句之前,首先要先弄清楚什么是Git。
Git是一个现代版的控制系统,由Linux Torvalds从2005年开始开发的一款开源项目。现如今,Git已经被大多数软件团队当做最好的选择。
Git采用了分布式架构,可以让每个开发人员在一个包含有所有更改历史的副本上工作。
虽然Git的命令不仅仅有这些,但是如果你掌握了以下这些语句,绝对能大大提高你的工作效率。
有很多的方式都可以复制一个远程存储库,但是有两种方式是最常见的,一个是用HTTPs,一个是用SSH。这两种方式的用的命令是一样的,但是存储库的URL和初始要求会不一样。
用HTTPs克隆需要用户名和密码,如果用了2FA或者单点登录,访问令牌也会被需要。URL会以https://开头。
用SSH克隆需要在本地的机器上使用SSH密钥对,密钥对的公钥需要添加到远程存储库中。URL会以ssh://开头。
如果你只需要克隆一个特定的分支或者一个特定的tag,可以用下方代码。
再或者,你不希望克隆存储库的整个历史,只是需要一定程度的历史深度,那么浅克隆技术可以被用到。
当你用git clone语句克隆了一个存储库,你将会创建一个名为“origin”的远程连接,自动指回到被克隆的存储库。
设置远程连接
git remote命令可以让你创建、查看和删除和其他存储库的远程连接。远程连接就像是URL的书签,可以方便我们以后可以便捷地引用。
为了查看带有URL详细信息的远程连接列表,可以用带有“-v”选项的命令。
添加另一个连接可以使用:
想要重命名现有的连接:
如果你不再需要这个连接了,你可以用以下的命令删除它:
在和一个团队共同工作了一段时间后,储存库可能会需要一些工作来清除所有过时和合并的分支。在这样的情况下,要删掉远程连接上不再存在的分支的引用,可以用:
但是在做这件事之前,你需要确保本地的存储库已经和远程存储库同步更新到最新版本了。
git fetch命令帮助你从远程存储库下载文件、提交和引用到本地存储库。它可以让你看到你的团队正在工作的最新的提交历史,并且让你可以在这个基础上检查最新的代码来继续工作。
没有任何选项,get fetch只会下载它克隆的远程存储库。想要获取所有的远程存储库,你可以添加“-all”选项。
如果要获取其他的远程存储库:
更具体的,如果要获取一个远程存储库的某个分支:
还有一句git pull命令,它其实是git fetch和git merge的结合。git fetch下载了远程内容但不更新活动的本地存储库,而git pull可以下载了内容,然后立刻执行git merge来创建一个git commit。如果活动的本地存储库有还在pending的改变,git pull会导致冲突,但是git fetch会保持状态。
如果你不想有新的merge commit,git有两个选项可以帮助你避免创建新的merge commit。
或者用
在从远程分支上获取了所有的内容之后,你就可以用一行命令来检查远程的分支或是在本地切换现有分支。
如果branch name没有特指,git会检查当前的本地分支和远程跟踪的分支,来对比历史记录。你可能会看到以下的结果:
而且,利用-b选项,git checkout命令还可以被用来创建一个新的分支,然后立刻切换到新的分支。
如果你在命令里没有指出existing branch,git会把new branch搭建到现在分支的HEAD上。
当branch name匹配多个远程跟踪的分支,为了避免冲突,你可以把remote name包含在branch name前面。
亦或者,你可以把新分支命名成和远程跟踪的分支相同的名称。
对分支的操作
这个命令可以列出本地的分支。但是,这个语句可以让你做得比这更多。
首先,为了不用查看新的分支就能创建新分支:
想要重命名当前的分支:
想要在本地删除现有的分支:
-d可以避免你在没有合并更改时删除现有的分支,而-D可以强行让git删除现有的分支。
你可以运用-a来看到所有远程连接的分支:
如果你想删除一个远程存储库的分支,可以执行以下语句之一。
参考资料:https://medium.com/swlh/the-git-commands-every-software-engineer-should-know-part-1-f2b3ebf5c2cf
获取更多求职咨询请添加Techbow小助手微信:Techbow2013
http://Techbow.comTechbow.com[详细]
-->赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。