赞
踩
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上传新的项目
创建一个文件夹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用一个新提交来消除一个历史提交所做的任何修改。
下面用具体场景来具体说明怎么使用
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????
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。