Git客户端(TortoiseGit)基本使⽤详解
1、环境安装
安装的⽅法,⼀直下⼀步就⾏,具体做法省略。
2、配置
1、⾸先,请选定⼀个存放Git项⽬的⽬录,这样管理⽅便. 如: D:\test , 然后在资源管理器中打开。
2、在空⽩处点击⿏标右键,可以看到右键菜单中多了⼏个选项。选择 --> TortoiseGit --> Settings,然后就可以看到配置界⾯。
3、点击General进⾏简单配置。Language可以切换语⾔(楼主⽐较习惯英⽂)。不勾选⾃动升级的复选框。可能还需要指定 ⽂件的路径,如 "D:\DevlopPrograms\Git\bin"。完成后,点击应⽤,确定关闭对话框。如下所⽰:
4、配置右键菜单.。在设置对话框中,点选左边的"Context Menu",设置常⽤的右键菜单。楼主⽐较常⽤的是如下选项:
5、设置记住密码
密码会明⽂保存在 C:\Users\Administrator\.git-credentials 这种⽂件中, 请⼩⼼使⽤.
进⼊设置, 点选左边的Git标签.可以发现,右边可以配置⽤户的名字与Email信息. 如下图所⽰:
因为当前还没有本地项⽬,所以 “Edit local .git/config(L)” 按钮处于灰⾊不可⽤状态,如果在某个本地Git项⽬下打开配置对话框,那么这个按钮就可⽤,然后就可以编辑此项⽬的⼀些属性。
点击 “Edit global .git/config(O)”按钮,会使⽤记事本打开全局配置⽂件,在全局配置⽂件中,在后⾯加上下⾯的内容:
[credential]
helper = store
完成后保存,关闭记事本,确定即可。
当你推送项⽬到GitHub等在线仓库时,会记住你输⼊的⽤户名和密码
3、⽰例
1. 克隆⼀个项⽬(楼主是从github上获取)
在⼯作⽬录下,如D:\test,空⽩处右键,选择: Git clone,则会弹出克隆对话框,如下图所⽰:
根据项⽬⼤⼩,时间会不⼀样。克隆完成后,如果没有错误,会给出提⽰:
git使用详解 进⼊克隆下的⽂件夹中,如D:\test\xwj_repo,空⽩处右键,弹出如下菜单:
其中,Git Pull是从远端拉取最新的代码,Git Fetch是从远端拉取最新的分⽀,Git Push是将本地仓库的代码提交到远端
Git Commit ->”master”,将本地代码提交到本地版本库(默认的分⽀是master)。
2. 将本地代码提交到本地仓库
创建⼀个⽂件,如, 然后提交(commit)到本地版本库(这个操作可以在离线状态操作)
2.1 选择Git Commit ->”master”,弹出下图:
2.2 填写提交备注message(不填写不允许提交),勾选需要提交的⽂件,点击commit,即可将本地代码提交到本地版本库。
出现如下弹框,表⽰提交成功
其中,提交时,会发现上图中的Status有⼏种值:
Unknown:新增的⽂件,也不在版本库
Added:新增的⽂件,在版本库
Modified:⽂件修改,在版本库
Missing:⽂件被删除,在版本库
3. 查看⽇志
右键选择Git Show Log(这个菜单可以通过上⾯的说的配置出来)。在⽇志中,可以通过⽇期、⽂件名、提交⼈等等过滤查询。
3.1 通过⽇志,可以很直观的看到提交相关记录。⽐如提交⼈、提交时间、提交了哪些⽂件等等。这些信息便于以后进⾏⽂件对⽐或者版本
回滚(后⾯将会介绍)点击,可以看到本次提交,对test1⽂件进⾏了哪些操作:
⾄于怎么去看这些颜⾊表⽰什么意思,可以去百度⼀下,这⾥不做介绍
4、将代码推送(push)到远端。这⾥是github
右键空⽩处,选择Git Push,出现如下弹框:
这⾥可以看到是本地哪个版本库提交到远端。⾄此,⽂件的整个提交过程就完成了
5、分⽀
发现问题:你代码写了很多,运⾏OK;但是突然想加个新功能进去,这个功能你也不知道能否正常运⾏,⽽且修改过程中,除了新加代码和⽂件进去,还会修改以前的代码。要是万⼀失败,修改回来也是⼀种很⿇烦的事情。这种时候很多⼈就⽤备份⽅式。来看看git是怎么优雅的处理这个问题的。
git的处理⽅式:当你想加⼀个新功能进去的时候,你可以新建⼀个分⽀,例如名字叫newbranch,然后在分⽀中把新功能加上去,如果OK,将代码合并到master分⽀上,如果新功能失败,切换回master分⽀上来,在newbranch写的代码,⼜全看不到了。
5.1 新建⼀个分⽀,右键-->TortoiseGit-->Create Branch
右键,你会发现当前的分⽀为你新建的newbranch分⽀了
5.2 接下来,就开⼼新增你的功能,⽐如我们在⽂件中新增⼀⾏⽂字,同时新增⼀个⽂件
5.3 提交我们的代码到newbranch分⽀的本地仓库,参考之前的2.2
5.4 突然发现该功能有漏洞,想回到之前的master分⽀,怎么办呢?
右键-->TortoiseGit-->Switch/Checkout,选择master即可。如下图:
5.5 空⽩处右键,会发现已经切换到master分⽀了。此时发现并没有带过来,再来看看⽂件是否回到了从前呢?
结果显⽰,⽆论是修改还是添加,都没有影响master分⽀上的⽂件,这就是分⽀的作⽤。
6、分⽀合并
如果此时发现newbranch分⽀上的功能是有效的,希望能合并到master,⼜该怎么操作呢?
PS:在合并分⽀前,⼀定要确认newbranch分⽀上的代码全部提交到本地版本库了
右键-->TortoiseGit-->Merge,选择被合并的分⽀,即newbranch。如下图
6.1 点击Ok按钮,会出现下图弹框。弹框中会列出被合并的⽂件。如下图所⽰:
6.2 我们发现⽂件被合并过来了,打开test1⽂件,发现内容正好是在newbranch分⽀上修改的内容。
⾄此,分⽀合并完成
7、拉取(pull)远端最新的修改内容
此时,我们团队还有另⼀个成员B,他需要获取我最新修改的内容,该怎么操作呢?
⾸先B切换到跟我同⼀分⽀,然后右键-->Git Pull,点击确认即可,就可将我修改的内容拉取到他的本地版本库
8、版本回滚
8.1先查看⽇志,确定想回滚到哪个版本(这下知道为啥要填写提交备注了吧)
8.2 ⽐如想回滚到创建⽂件前,则点击该步操作所对应的message之前的那⼀个⽇志(add spring demo)
然后右键-->Reset “master” to this…,表⽰将当前master分⽀上的⽂件回滚到这个版本,如下图
8.3 选择之后,弹出如下弹框,在Reset Type下选择你回退的类型(楼主⼀般选择Hard:Reset working…..),点击Ok即可
会发现,此时⽂件消失了,如下图:
9、解决冲突(略)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论