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????

TortoiseGit工具使用相关推荐

  1. TortoiseGit工具 修改登录用户名密码

    TortoiseGit是大家常用的git客户端,操作起来非常的简便,但是当账号密码变化之后,再使用TortoiseGit操作git就会提示没有权限,那么,TortoiseGit怎么修改用户名密码呢,下 ...

  2. 2023.TortoiseGit 工具

    文章目录 1 下拉项目 1.1 下载主分支项目 1.2 下载其他分支代码 1.3 下载指定日志的版本源码 1.4 下拉项目发现文件路径有变动 2 上传代码 2.1 对于没有新添加的文件,对已有文件进行 ...

  3. 用TortoiseGit工具push上传程序和下拉程序pull

    目录 TortoiseGit安装与配置 如何上传程序push 如何下拉程序pull TortoiseGit安装与配置 安装TortoiseGit.可从网上搜索下载. Settings方法如下: 注:一 ...

  4. TortoiseGit小乌龟工具上传解析

    使用tortoiseGit工具一直出错,由于没有设置自动获取putty key这一项,从网上找了一个教程,现分享如下,以做参考: 前半部分参考网上的例子:http://www.showerlee.co ...

  5. win10安装git工具及TortoiseGit

    下载 环境:windows操作系统: win10 64位 1. git客户端工具: TortoiseGit https://npm.taobao.org/mirrors/git-for-windows ...

  6. TortoiseGit:记住用户名和密码

    1.背景: 我们在使用 tortoisegit 工具时会无可避免的经常性 pull 和 push,这时通常要输入用户名和密码,由于麻烦,就有人提出了记住用户名和密码的需求... ... 2.设置: [ ...

  7. Git账号以及TortoiseGit配置

    2019独角兽企业重金招聘Python工程师标准>>> Http方式 这个没什么好说的,直接clone http的地址(git地址分为ssh地址和http地址),只是每次同步(pul ...

  8. git 小乌龟 配置_Git-Bash和TortoiseGit小乌龟客户端配置记录

    最近台式电脑硬盘出了点问题,重新装了系统,导致一些常用的软件都得重新装.这次遇到了一个git相关的问题,也解决了我之前脑海中一些模糊不清的概念,让我重新明白了问题的根源,以后知道如何来解决啦~ 作为一 ...

  9. 一台电脑上配置多个git账号(gitee),向不同git线上仓库提交(命令行/TortoiseGit同时) 代码

    目录 1.一台电脑上实现与多个git在线仓库提交代码的实际场景 2.安装git TortoiseGit 生成SSH key 和 git的.ssh目录 创建并配置config文件 2.1.首先必须先安装 ...

最新文章

  1. python的scripts里没有pip_解决python scripts和pip缺失问题
  2. 1到100的二进制编码_每天经过100天的编码后,我学到了什么
  3. html和css可以用在ssh里面么,在网站中使用SSH
  4. oracle一些基本命令
  5. MySQL从入门到精通详细教程
  6. 6个免费下载课件的资源网站,小学、初中、高中、大学全覆盖!
  7. 福利来了,axure8.1注册码
  8. 5000+ 字解读 | 产品经理:如何做好元器件选型?
  9. Linux:文件系统和数据资料
  10. uiautomator2遍历子元素
  11. 遗传算法GA原理及实现(python实现GA求解TSP代码)
  12. Radare2 框架介绍及使用
  13. 如何转让个人股权?个人股权转让流程
  14. linaro gcc 交叉编译链编译
  15. 软件设计师(中级)详细复习过程总结
  16. Vue公众号微信支付
  17. apktool,dex2jar,jd-gui简单使用
  18. 状态反馈极点配置控制器设计学习笔记
  19. Android安卓开发基础-apk安装包的创建及发布安装
  20. 三年前端,面试思考(头条蚂蚁美团offer)

热门文章

  1. python多线程:Thread类的用法
  2. SpringBoot整合任务系统(quartz和SpringTask)
  3. ArrayDeque类的使用
  4. vue2.0项目搭建
  5. 圣诞节,来棵Golang的圣诞树吧
  6. 科大讯飞t20和t20pro区别 对比评测哪个好
  7. percona mysql 主从_mysql之percona-toolkit安装与主从复制
  8. Python爬虫股票评论,snowNLP简单分析股民用户情绪(草稿)
  9. cmd获取python返回值
  10. Docker如何开启远程访问,实现api远程管理?其实只需要改一个地方即可