当前位置:   article > 正文

TortoiseGit工具使用_tortoisegit commit user info

tortoisegit commit user info

TortoiseGit clone、commit、push、pull


3.1 克隆项目

 

打开资源管理器(我的电脑/计算机), 进入规划好的某个目录中, 然后在空白处点击鼠标右键, 选择 TortoiseGit --> 克隆... (Clone...).

弹出克隆项目对话框:

在对话框的 URL中输入项目地址,如:

https://github.com/cncounter/LispGentleIntro.git

确定本地目录,然后点击 确定 按钮. 等待完成后,点击关闭按钮即可.

3.2 修改提交项目

项目克隆完成后(可以将克隆 clone 理解为 下载, 检出 checkout 操作). 修改本地项目中的某些文件,如 将 README.md 修改

然后在本地项目的空白处点击鼠标右键Commit,

弹出提交(Commit)对话框:

作为好习惯,填写提交日志,勾选需要提交的文件,然后点击 "确定" 按钮, 即提交到本地仓库.

3.3 将提交到本地的项目推送到在线仓库

推送是提交的下一步操作.

在本地项目的空白处点击鼠标右键, 选择 TortoiseGit --> 推送... 或: Push....

弹出推送(push)对话框:

一般保持默认,点击 “确定” 按钮.

然后弹出推送进度界面, 可能要求你输入用户名:

确定OK,然后要求输入密码:

密码输入正确后,OK,显示推送成功界面:

如果你按照上一小节的设置操作,则输入密码以后会记住密码. 密码会明文保存在 C:\Users\Administrator\.git-credentials 这种文件中, 请小心使用.

3.4 拉取项目(pull ...)

如果本地的项目没有在线仓库的新,则需要执行拉取操作(Pull ...).

在本地项目的空白处点击鼠标右键, 选择 TortoiseGit --> 拉取... 或: Pull....

弹出拉取(pull)对话框:

【如果拉取有BUG,请不要使用 rebase, 下载最新的 TortoiseGit 即可】, 进入 拉取进度界面:


TortoiseGit操作分支


例如:当切换到remotes/orgin/release-2.0远程分支的话,,并不是直接切换到远程分支上去了,

其实是自动先给remotes/orgin/release-2.0远程分支,新建一个release-2.0本地分支,在切换到本地分支上。

然后在该本地分支上写代码。

删除分支:TortoiseGit没有找到删除的地方,这里就可以配合Git命令行来操作了,就不要去纠结删除在哪里。


TortoiseGit stash save保存没有完成的工作


如何你在master分支上进行写代码,进行到一半,需要在master分支上进行其他操作,现在该怎么办呢??


TortoiseGit拉分支


7.1新建一个分支,右键-->tortoiseGit-->Create Branch

  

右键,你会发现当前的分支为你新建的newfunction分支了

7.2接下来,就开心新增加你的功能;我们再proprame.txt中不仅增加了show方法,还修改了metho方法

7.3提交我们的代码,此时我们发现这个新功能不行,存在很多漏洞等等问题。我们想回到之前的代码。怎么办呢?

7.4为了回到之前的项目,我们直接切回master分支。

先来看看现在的文件内容,新加的和修改的都在。

然后我们切换到master分支,右键-->tortoiseGit-->Switch/Checkout

选择master即可,然后确定

再来看看program中的代码是否回到了从前呢?

无论是修改,还是添加,都没影响到复原。这就是分支的作用。这个功能是不是让你省去了很多工作量呢。


TortoiseGit上传新的项目


  1. 创建一个版本库

创建一个文件夹GitDemo,然后  右键--Git Create repository here...

此处不用勾选Make is Bare

确定后,在GitDemo文件夹下回多一个.git文件夹【电脑要设置为显示隐藏文件夹】

此文件夹,尽量不要乱修改或删除。

2.创建一个文件,然后提交(commit)到版本库[这个操作可以在离线状态操作]

2.1选择Git Commit->"master"

2.2填写message,勾选要commit的文件,然后点击OK。会在弹出一个窗口点击close即可。

3.然后在program中添加一个新的方法method。当文件代码改变,那么文件会显示为一个红色感叹号

4.将新增的代码,提交到版本库中,参考2.1和2.2步。

5.查看日志

在日志中,文件更改的信息,都很清楚。

6.将代码推送(push)到云端,例如:github、oschina上面

1、如果在github上已经建立好了项目,那直接拷贝项目地址过来就ok

2、在github上新建立一个项目,请参考GitHub之新建项目(Create a New Repository).note

将电脑得代码push到云端。

右键-->tortoiseGit-->push

设置好URL,确定。然后开始push,输入用户名,输入密码就OK了

输入用户名,后面还要输入密码,然后等待成功。


用户名和密码问题


TortoiseGit在提交时总数会提示你输入用户名密码,非常麻烦。解决方案如下:

方法一:

[credential]

helper = store

保存,输入一次密码后第二次就会记住密码了


Tag的使用


Tag就是起到提醒自己而特意设的一个标记。

如下:如何某个地方是发布过版本的地方,你打Tag就可以很清楚的知道。


revert和reset版本回滚


reset(移动分支的指针)

reset命令把当前分支指向另一个位置,并且相应的变动工作区和暂存区。

revert

git revert用一个新提交来消除一个历史提交所做的任何修改。

  • git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。
  • 在回滚这一操作上看,效果差不多。但是在日后继续merge以前的老版本时有区别。因为git revert是用一次逆向的commit“中和”之前的提交,因此日后合并老的branch时,导致这部分改变不会再次出现,减少冲突。但是git reset是之间把某些commit在某个branch上删除,因而和老的branch再次merge时,这些被回滚的commit应该还会被引入,产生很多冲突。关于这一点,不太理解的可以看这篇文章

下面用具体场景来具体说明怎么使用

1、如何你在修改了一些代码,但没有commit,但突然不想要了怎么办??

从这里可以看出,这些修改只在工作区中

一般这个我都使用图形化工具操作

这个操作让工作区回到上次提交的状态,还能针对某个文件这样做。

为什么是revert呢?不是应该使用reset吗?

2、如果修改已经commit到本地版本库了,如何撤销这次提交呢??

用命令行撤销commit,参考这个 http://zhyq0826.iteye.com/blog/1671638

图形操作

版本会退到上一个版本,但是可以看到“test”版本还在log里面,刷新就不见了


TortoiseGit操作submodule


克隆带子模组的版本库的步骤

克隆带子模组的git库,并不能自动将子模组的版本库克隆出来,对于只关心项目本身的数据,而不关心项目引用的外部项目数据的用户,这个功能非常好,数据没有冗余而且克隆的速度也很快。

第一步:克隆super主版本库

在工作区中克隆主主版本库后,会发现子模组的版本库并没有克隆,只有将存放子模组版本库的目录克隆下来了。

第二步:克隆子模组

如果需要克隆出子模组形式引用的外部库,首先需要执行Submodule Update操作。

在需要作克隆子模组的Git工作区中右击,选择“TortoiseGit->Submodule Update...”,点击“OK”即可。

操作后就会把子模组的版本库克隆下来。

如何做的提交主工程就能提交submodule????

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号