Git的图形化工具使用教程
虽然感觉并没有什么暖用,但姑且还是写出来留作纪念好了
Git这种分布式版本控制系统最适合的就是单枪匹马搞开发的选手,不需要服务器,下载个git和图形工具,网速快十分钟就能搞定开始愉快的开发工作。我在搭建gitlab服务器时,查找了许多关于git的使用教程,他们中大多数都是使用命令行来操作,非常的专业,灵活。但git再怎么吹的玄乎完爆SVN,它终究只是一个工具而已,工具首先要满足需求,第二就是要好用,显然命令行是没有图形界面好用的。
在windows上的图形工具当然是小乌龟(TortoiseGit)最好用了,Mac则上SourceTree,不过我在mac上用SourceTree总是会有一些奇奇怪怪的小问题,所以我并没有怎么深入了解它。
第一章 Git的安装和图形工具安装
随便搜索关键词“git”,去到git官方网站。下载对应你所用的操作系统的版本,然后安装,一路下一步就行了,唯一一点需要注意的就是在如下界面时,要选择第三个选项,这样你克隆的代码就不会改变格式了。
安装好了之后,你随便找个空地右键一下,右键菜单里就出现了下面这些神奇的选项
其中git init here是在此创建一个版本库(创建在哪?你点哪就是哪啊),git gui是git自带的一个简易图形化工具,git bash是命令行工具
虽然介绍了它们三个,但并不会有什么用,如果你坚持觉得命令行用起来更酷炫,更自由,更有范。我承认你赢了
你可以去看廖雪峰老师关于git的教程
安装TortoiseGit也是如此简单,下载,安装,一路下一步,安装好了之后右键,又多了好多东西。
英文的小乌龟用起来爽不爽?当然不爽啦!所以我们可以在TortoiseGit的官网里下载汉化包,变成中文版。
第二章 TortoiseGit的基本操作
当你第一次使用TortoiseGit的时候,首先要确认你的身份,这样你提交的修改其他成员才知道是谁做出的修改,如果有问题该向谁询问
确认身份,右键-->TortoiseGit-->Setting,在打开的对话框里,左边选git,右边就会出现写用户名和邮箱的地方
这是已经设置好的状态
创建版本库
当你确认了自己的时,先选择一个自认为合适的目录作为工作区,例如下图中我选择了I:\我的工作区 作为我的工作区
于是我在该目录下点击右键,选择“git在这里创建版本库”
出现以下界面,然后点击确定。
于是该目录就变成版本库了
在介绍基础操作之前,我们要理清几个概念,缓存区,本地版本库,远程版本库。
当你对工作目录下的文件修改,添加,删除时,这些操作都是存在于缓存区,你可以随时通过右键TortoiseGit里的还原来回到你未改动过的文件,但当你右键提交到了版本库之后,你的修改就被存入本地版本库中,这时你只能回溯到之前提交的版本
提交过后的修改只是存在于你本地的版本库,想让其他开发者能看到你的修改,就必须通过右键的git同步,将修改推送到gitlab上,其他开发者才能看到你的修改。
通过一次场景模拟来介绍git的使用
小明是一名刚入职的新员工,入职第一天,组长找到管理员让其为小明注册了gitlab(一种git服务器)的账号。并且组长将小明的账号添加到了gitlab项目组的名单里
小明按照使用手册上的指示登录了gitlab后,找到了他要开发的工程,复制了该工程的路径,又按照使用手册中的提示,将工程的版本库克隆到了他工作用的电脑的工作区目录下。可以开始工作了。
打开了克隆下来的版本库里面的文件,小明开始工作
他输入了好几十行的代码,感觉很满意,于是保存了一下,出去吃午饭了
吃完午饭回来,小明感觉之前好几十行的代码写的根本没有任何意思,但删起来实在是太麻烦了,于是他在保存的文件上右键选择还原
文件就回到了修改之前的样子
接着小明又写了好几千行的代码,仔细检查过后,他觉得写的很好,不用修改了,便保存了。
之后在空白处右键点击提交到当前分支master。
并且对此次修改添加了描述,然后提交了
小明觉得非常满足,于是把自己的修改推送到gitlab上。然后收拾东西下班了
第二天刚到公司,组长过来跟小明说他昨晚的提交的代码与上面的衔接不是非常完美,所以要小明修改一下,小明决定倒退回两个版本之前,从新编写。于是他右键文件选择追溯
选择切换/检出到了ID4的版本
小明并不需要原来的版本了,所以选择了覆盖当前分支,这样就不会出现多个分支了
再打开了一看,文件已经回到了前两个版本之前了
小明又可以愉快的工作了。
后记:小明的组长看到小明的工作记录之后问他道:“你为什么选择覆盖已存在的分支,而不是选择创建一个新的分支呢?这样万一你回滚之后后悔了不是还可以切换回原来的分支吗?”
小明答曰:“我并不知道什么叫分支。”
组长决定下一周给小明的奖金减少到三百块,并且写了一篇《git的进阶使用》交给小明。
转自 http://blog.csdn.net/qq_25144527/article/details/46235793
Git的图形化工具使用教程的更多相关文章
- gitk、Git GUI 图形化工具中文显示乱码的解决方案
在Windows下使用gitk.Git-Gui时,可能会出现代码中的中文乱码的情况.解决方法:在软件的安装目录下,在Git\mingw64\etc\gitconfig文件末尾添加: [gui]enco ...
- GIT → 09:TortoiseGit 图形化工具
GIT → 09:TortoiseGit 图形化工具
- MacOS系统下的图形化工具
MacOS系统下的图形化工具 MacOS系统下安装了Git后,发现如果Git中有中文文档操作还是比较麻烦(需要输入中文的文件名).图形化对Git的操作还是相对于方便一些.所以准备找一个图形化的工具. ...
- python+pycharm+PyQt5 图形化界面安装教程
python图形化界面安装教程 配置环境变量 主目录 pip所在目录,及script目录 更新pip(可选) python -m pip install --upgrade pip ps:更新出错一般 ...
- Python音视频开发:消除抖音短视频Logo的图形化工具实现
☞ ░ 前往老猿Python博文目录 ░ 一.引言 在<Python音视频开发:消除抖音短视频Logo和去电视台标的实现详解>节介绍了怎么通过Python+Moviepy+OpenCV实现 ...
- Moviepy音视频开发:视频转gif动画或jpg图片exe图形化工具开发案例
☞ ░ 前往老猿Python博文目录 ░ 一.引言 老猿之所以学习和研究Moviepy的使用,是因为需要一个将视频转成动画的工具,当时在网上到处搜索查找免费使用工具,结果找了很多自称免费的工具,但转完 ...
- js正则表达式图形化工具-rline
github地址:https://github.com/finance-sh/rline 在线demo: http://lihuazhai.com/demo/test.html 这是一个js正则表达式 ...
- Linux下链接数据库图形化工具
(一).Linux环境下mysql的安装.SQL操作 Linux下安装MySQL (rmp --help) 基本步骤:上传软件->检查当前Linux环境是否已经安装,如发现系统自带的,先卸载-& ...
- 6.MySQL图形化工具的使用
6.图形化工具的使用6.1 Mysql Workbench Mysql Workbench是Mysql官方推出的集成图形化工具,替代了之前的图形化管理工具Mysql Administrator和图形化 ...
随机推荐
- Word Embedding与Word2Vec
http://blog.csdn.net/baimafujinji/article/details/77836142 一.数学上的“嵌入”(Embedding) Embed这个词,英文的释义为, fi ...
- go-ethereum
如果要深入了解go-ethereum项目的实现与机制,看源代码是必不可少的.今天这篇博客就简单介绍一下如何在本地搭建项目的开发环境. GO语言环境搭建 以win8为例,访问地址https://gola ...
- Robotframework(2):创建RF第一条可执行的用例
转载:http://www.cnblogs.com/CCGGAAG/p/7800323.html 上篇,我们说了如何配置基础的环境,配置好了python2.wxPython .robot framew ...
- 20160205.CCPP体系具体解释(0015天)
程序片段(01):01.杨辉三角.c 内容概要:杨辉三角 #include <stdio.h> #include <stdlib.h> #define N 10 //01.杨辉 ...
- AS-->创建项目(慢)和打开项目(慢)等需要注意的问题
Android Studio 创建新项目的时候,会在进度条的界面滞留很久. 有时候一天都卡在这. 打开其它项目有些时候,也会出现这种情况. 主要的原因就是, 此过程正在 下载对应版本的 gradle. ...
- 使用jstl报错:Can not find the tag library descriptor for “http://java.sun.com/jstl/core”
使用jstl报错:Can not find the tag library descriptor for “http://java.sun.com/jstl/core” 出现这个错误的原因是项目中没有 ...
- "___gxx_personality_v0", referenced from:
这是因为里面有用到C++ 的一些东西.所以会出现这个问题 两种解决办法. 第一种.TARGETS -> Build Phases -> Link Binary With Libraries ...
- iOS应用程序状态图
理解应用的状态对于我们开发iOS大有裨益. 当前应用所处什么状态,什么促使它在各个状态间进行过渡,你的代码又是如何 唤醒这些过渡,等等等等. 先请看下图: 1. 当应用出于非运行状态时,它处于图中的& ...
- 求两个有序数组的中位数或者第k小元素
问题:两个已经排好序的数组,找出两个数组合并后的中位数(如果两个数组的元素数目是偶数,返回上中位数). 设两个数组分别是vec1和vec2,元素数目分别是n1.n2. 算法1:最简单的办法就是把两个数 ...
- pynput使用简单说明
控制鼠标 from pynput.mouse import Button, Controller import time mouse = Controller() print(mouse.positi ...