Git版本控制系统的使用方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Git版本控制系统的使⽤⽅法
Git版本控制系统的使⽤⽅法
⼀、Git简介
Git是⼀个分布式版本控制系统,是⽤来追踪计算机⽂件的变化的⼯具,也是⼀个供多⼈使⽤的协同⼯具。
每个⼈都可以拥有⼀个完整的版本库。
分布式版本控制系统的⼏乎所有操作包括查看提交⽇志、提交、创建⾥程碑和分⽀、合并分⽀、回退等都可以直接在本地完成⽽不需要⽹络连接。
⼆、Git客户端的下载和安装
Git官⽅客户端为Git Bash,Git bash是以命令⾏的形式来操作的,另外本使⽤⽅法中可视化软件采⽤了sourcetree,Git bash 和sourcetree的使⽤请⾃⾏选择,⽤户需先下载Git和sourcetree。
1.Git的下载和安装:
1) 官⽹地址:https:///doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html /
进⼊Git官⽹,由于电脑是Windows系统,选择Downloads for Windows。
2) 右键以管理员⾝份运⾏下载的安装包。
3) 选择安装路径
4) ⼀直点击Next按钮,当出现下图情况时选择“Use Windows’default console
window”,然后点击“Next”
5) 继续点击“Next”,最后点击“Install”,等待安装完成。
6) 在开始菜单中打开Git CMD
在CMD中输⼊Git,出现Git的相关提⽰说明安装成功,如下图所⽰:
参考⽂档:/doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html /s?
id=1601036689157983619&wfr=spider&for=pc
2.Sourcetree下载和安装:
1)⾸先,下载windows版本的企业版sourceTree。
直接进⼊官⽹
https:///doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html /enterprise下载
2)进⼊下载保存sourceTree的⽬录,双击SourceTreeEnterpriseSetup_3.0.17.msi⽂件进⾏
安装
3)安装完成后会出现以下界⾯,这是需要注册Bitbucket账号,但是注册该账号需要连接
外⽹,所以⽆法进⾏,下⾯是跳过注册的⽅法。
⾸先关掉下图中的界⾯
4)将%LocalAppData%\Atlassian\SourceTree输⼊到资源管理器中的地址栏,进⼊
sourcetree⽂件夹,如下图。
5)在该⽂件夹中新建⼀个.txt⽂件,在⽂件中输⼊以下内容并保存,然后将⽂件改名为
accounts.json(注意最后⽂件的类型是JSON⽂件):
[
{
"$id": "1",
"$type":"SourceTree.Api.Host.Identity.Model.IdentityAccount,SourceTree.Api.Host.Identity", "Authenticate": true, "HostInstance": {
"$id": "2",
"$type":"SourceTree.Host.Atlassianaccount.AtlassianAccountInstance,
SourceTree.Host.AtlassianAccount",
"Host": {
"$id": "3",
"$type":"SourceTree.Host.Atlassianaccount.AtlassianAccountHost,SourceTree.Host.AtlassianAcco unt", "Id": "atlassian account"
},
"BaseUrl": "https:///doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html /"
},
"Credentials": {
"$id": "4",
"$type": "SourceTree.Model.BasicAuthCredentials, SourceTree.Api.Account",
"Username": "",
"Email": null
},
"IsDefault": false
}
6)找到sourcetree的安装⽬录,默认安装⽬录是在%programfiles(x86)%\Atlassian ⽬录,双
击SourceTree.exe打开sourcetree,这时可以发现已经跳过了注册,注册完成了。
7)点击下⼀步,按照下图⼀步⼀步来就可以完成安装了。
8)出现下图,就证明已经安装完成了。
参考⽂档:
https:///doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html /p/dce21c4e88fc
三、Git bash的使⽤
⼀般来说,⽇常使⽤只要记住下图6个命令,就可以了。
但是熟练使⽤,恐怕要记住60~100个命令。
⼏个专⽤名词的译名如下:
Workspace:⼯作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库
1.⽤户信息配置
下载之后打开Git bash是这个样⼦的,配置⽤户信息。
如下图:
需要填写账号名和邮箱(账号⽤姓名的拼⾳,邮箱⽤真实邮箱):
git config --global /doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html “Your Name”(注意前边是“- -global”,有两个横线)git config --global user.email
“email@/doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html ”
2.创建版本库
在我的电脑中进⼊到你想建⽴本地仓库的⽂件夹,右键弹出选择Git Bash Here
要想将此⽂件夹设为本地仓库,只需输⼊命令git init,如下图:
在该⽂件夹中会⾃动创建⼀个.git的隐藏⽂件夹,这个⽬录是Git来跟踪管理版本库的。
命令⼩结:# 在当前⽬录新建⼀个Git代码库$ git init
⾸先将需要添加的⽂件放到版本库⽂件夹下,例如:我在该⽂件夹下创建了⼀个readme.txt⽂件,如需将该⽂件添加到暂存区,只需执⾏git add readme.txt
当添加了很多个⽂件时,⼀个⼀个⽂件来添加就显得很⿇烦了,如需⼀次添加所有⽂件到暂存区,只需执⾏git add .
命令⼩结:
# 添加指定⽂件到暂存区$ git add [file1] [file2] ...
# 添加当前⽬录的所有⽂件到暂存区$ git add .
4.提交⽂件到仓库区
提交到暂存区后,还需通过执⾏commit命令提交到仓库区,才可以推送程仓库中。
如需将暂存区指定⽂件提交到仓库区,执⾏$ git commit [file1] [file2] ... -m “修改注释”。
例⼦如下图:
如需将暂存区所有⽂件提交到仓库区,执⾏$ git commit -m “修改注释”。
命令⼩结:
# 提交暂存区到仓库区$ git commit -m “修改注释”
# 提交暂存区的指定⽂件到仓库区$ git commit [file1] [file2] ... -m “修改注释”
5.版本回退
在平时的⼯作中你会不断地对⽂件进⾏修改,然后不断提交修改到本地版本库中,在你每次commit的时候,Git都会“保存⼀个快照”。
⼀旦你把⽂件该乱了,或者误删了⽂件,就可以从版本库中选择⼀个版本来进⾏恢复,然后就可以继续⼯作了。
为了恢复到指定的版本,⾸先我们需要知道该版本的版本号,然后根据这个版本号进⾏恢复。
1)查看历史记录,获取版本号
执⾏命令$ git log,即可显⽰最近到最远的提交⽇志,例⼦如下:
从图中红框内可以看到该版本库所有的提交⽇志,其中像34550f3…和db66c4696…就是对应提交的版本号(commit id)。
在版本34550f3…中创建了⼀个reset.txt⽂件并提交到了版本库中。
2)回退到指定版本
执⾏命令$ git reset --hard db66c46(其中版本号不需要输全,只需要输⼊前⾯⼏位能与其他版本号区别开就⾏),即可回退到该版本上
回退版本后,点开⼯作区可以发现reset.txt⽂件没有了,证明已经回退到db66c4696…版本了。
如下图:
3)查询命令执⾏的历史记录
当你回退到过去版本的后,你后悔了,想恢复到之前最新的版本怎么办,这时执⾏命令$ git log是⽆法找到该版本号的。
这时可以通过执⾏命令$ git reflog来查看你执⾏过什么命令,这样就能知道之前最新版本的版本号了。
例⼦如下:
在图中红框内可以发现之前执⾏的命令,如红框内就记录了以前的最新版本的版本号了。
有了这个版本号,就可以回到该版本了,执⾏命令$ git reset –hard 34550f3。
这时再次打开⼯作区,你可以发现reset.txt⽂件⼜出现了,证明版本⼜回到了最新版本。
命令⼩结:
# 查看提交历史记录$ git log
# 查看执⾏命令的历史记录$ git reflog
# 回退到指定版本$ git reset –hard [commit-id]
6.分⽀管理
Git⿎励⼤量使⽤分⽀
1)分⽀的简介
每次提交,Git都把它们串成⼀条时间线,这条时间线就是⼀个分⽀。
在Git⾥,有⼀条主分⽀,即master分⽀。
HEAD严格来说不是指向提交,⽽是指向master,master才是指向提交的,所以,HEAD指向的就是当前分⽀。
⼀开始的时候,master分⽀是⼀条线,Git⽤master指向最新的提交,再⽤HEAD指向master,就能确定当前分⽀,以及当前分⽀的提交点,他们的关系如下图:
当创建新的分⽀,例如dev时,Git新建了⼀个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表⽰当前分⽀在dev上,在dev上提交⼀次修改后,他们的关系就如下图:
2)分⽀的作⽤
假设你准备开发⼀个新功能,但是需要两周才能完成,第⼀周你写了50%的代码,如果⽴刻提交,由于代码还没写完,不完整的代码库会导致别⼈不能⼲活了。
如果等代码全部写完再⼀次提交,⼜存在丢失每天进度的巨⼤风险。
现在有了分⽀,就不⽤怕了。
你创建了⼀个属于你⾃⼰的分⽀,别⼈看不到,还继续在原来的分⽀上正常⼯作,⽽你在⾃⼰的分⽀上⼲活,想提交就提交,直到开发完毕后,再⼀次性合并到原来的分⽀上,这样,既安全,⼜不影响别⼈⼯作。
3)创建分⽀
通过执⾏命令$ git checkout -b [branch-name],即可创建⼀个新的分⽀并且切换到该分⽀上。
例⼦如下:
4)切换分⽀
执⾏命令$ git checkout [branch-name],即可切换到指定的分⽀上。
例⼦如下:
5)查看分⽀
执⾏命令$ git branch,即会列出所有的分⽀,*号会标记出当前所在的分⽀
6)合并分⽀
在dev分⽀下⼯作并commit修改后,如果想将dev分⽀和master分⽀合并到⼀起,需要先切换回master分⽀,然后通过执⾏命令$ git merge dev,即可将dev分⽀合并到master分⽀中了。
git merge命令是将指定分⽀合并到当前分⽀。
例⼦如下:
7)删除分⽀
当合并完成后,在dev分⽀上做的改动就已经合并到master分⽀上了,如果这时已经
不需要dev分⽀了,可以放⼼地把dev分⽀删除掉。
执⾏命令$ git branch –d dev。
执⾏命令$ git branch 就可以看出dev分⽀已经被删除了。
命令⼩结:
# 查看分⽀$ git branch
# 创建分⽀$ git branch [branch-name]
# 切换分⽀$ git checkout [branch-name]
# 创建+切换分⽀$ git checkout –b [branch-name]
# 合并某分⽀到当前分⽀$ git merge [branch-name]
# 删除分⽀$ git branch –d [branch-name]
Git的分⽀是⼀个很强⼤的功能,可以说是Git的“必杀技特性”,由于篇幅问题,更详细的介绍以及远程分⽀管理请参阅该链接:
https:///doc/3bafbcbf42323968011ca300a6c30c225901f0b6.html
/wiki/0013739516305929606dd183********c67b8067c8c017
b000/001375840038939c291467cc7c747b1810aab2fb8863508000
7.⽣成ssh keys
可以通过执⾏命令$ ssh-keygen -t rsa -C "邮箱地址"⽣成ssh keys, 然后连续按Enter 键三次,既可⽣成id_rsa和id_rsa.pub⽂件,该⽂件⽣成在C:\Users\Admin\.ssh⽬录下,其中需要复制id_rsa.pub⽂件中的内容到服务器上的⽤户中⼼的SSH Keys 上。
当上传了公钥后,执⾏命令ssh -l -p 29418 ,如果没报错,。