Git代码管理工具学习

分布式管理工具:git

相比较svn它更加的方便,基本上我们的操作都是在本地进行的。

Git文件的三种状态:已提交,已修改,以暂存。

已提交:表示文件已经被保存到本地数据库。

已修改:修改了某个文件。

以暂存:把修改的文件放到了下次提交保存的清单中。

Git只关心文件系统的整体是否发生了变化,其它的版本控制工具更多的关心文件的内容是否发生变化。

Git基本的工作流程

1:在工作目录中修改某些文件,2:对修改后的文件进行快照,然后保存到暂存区域。3:提交更新,将保存在暂存区域的文件快照永久的转存到Git目录中。

Git使用心得

我们利用git创建的所有分支,都是在本地进行的,分支是不会去服务器中占用内存的。只有我们将分支合并才会同意提交到服务器中。

这就是git强大的地方,它在服务器上存储了一个文件库(以元数据方式存储),在存储了一个版本及分支更改等变更等的变更数据信息库,我们每次切换的时候向服务器发送一个请求,服务器则根据我们的请求变更我们的项目中的文件。整个过程就是快速的传输,服务器上并不会一一存储各个分支的文件副本,这也是git服务端版本库不会暴增的原因。

2:在使用TortoiseGit工具的时候,红色表示新分支,绿色表示其它分支变更信息。

3:拉取和获取的区别

拉取(Pull):会从远程取得最新版本然后合(Merge)并到本地库。

获取(Fetch):则会从远程取得最新版本,并不会合并(Merge)到本地库。

可以说拉取(Pull)=获取(Fetch)+合并(Merge),我们可以从安全的角度来看这样更加的安全,我们可以获取到最新的版本之后,我们进行比较在进行选择性的合并,之后将副本分支和本地版本比较合并后,在提交到远程主机。

4:VS中使用git的一些基本操作

拉取:将远程版本库合并到本地版本库(相当于Fetch+Meger)

获取:从远程版本库获得最新版本。

合并:将两个版本库进行合并。

提交:提交到本地暂存库;

推送:将所有的更改推送到远程库中。

同步:先拉取,接着将本地库推送到远程库,注意这个顺序。

5:提交

这里我们修改了代码,我们点击提交,就会到下面的界面,我们需要写上备注(代码修改了什么)。下面是这三个提交的含义;

提交:将文件存入本地版本库;

提交和推送:将文件更改同时存入本地库和远程版本库;

提交和同步:将文件更改提交到本地库,在从远程版本库拉取最新版本到本地,在推送本地库到远程版本库。

注意:这里的操作不针对当前文件,而是对所有更改进行提交,推送,同步。

6:创建分支

这里的创建分支分为

两种,本地分支和远程分支。

本地分支在创建前,一定要获取最新版本,远程分支则要求所有成员最好能推送更改。对于远分支,我们一定要取消跟踪远程分支的这个选项,否则创建了跟踪分支是不能发布的。

对于git的学习我还需要继续学习,自己以后在项目中要慢慢的学习git的使用,这样自己到公司去了就可以快速的融入公司了。

Git版本控制工具学习的更多相关文章

  1. Git 版本控制工具(学习笔记)

    GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core  之后回车输入密码,即可完 ...

  2. Git版本控制工具(三)----远程仓库GitHub的使用

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. git版本控制工具(二)----本地版本库的常用操作

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. Git版本控制工具(一)----git的安装及创建版本库

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  5. 使用Git版本控制工具管理GitHub

      使用Git版本控制工具管理GitHu Git是一个分步式的管理系统:只要上传操作得当,所有的都可以相当于是中央服务器,成员代码共享,A写的代码B也有,一般把一个人当做主机,其他人通过该主机拼装代码 ...

  6. 再次学习Git版本控制工具

    Git 究竟是怎样的一个系统呢?为什么在SVN作为版本控制工具已经非常流行的时候,还有Git这样一个版本控制工具呢?Git和SVN的区别在哪儿呢?Git优势又在哪呢?下面PHP程序员雷雪松带你一起详细 ...

  7. Git版本控制工具(1)

    学习Git的最佳资料网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ 这 ...

  8. Git版本控制管理学习笔记1-介绍

    几乎所有的版本控制工具都是出于同样的目的:开发以及维护开发出来的代码,方便读取代码的历史,记录所有的修改.这里,介绍的是当前在开源社区内非常流行的版本控制工具Git.它是由Linus Torvalds ...

  9. Git 版本控制工具使用介绍------Windows系统下使用

    Git 是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什 ...

随机推荐

  1. js下的面向对象

    本文记录了一种Javascript的面向对象方法及原理理解,示例代码如下: //构造函数 var MClass = function(value1, value2) { this.member = & ...

  2. 一个App完成入门篇(二)-搭建主框架

    通过第一课的学习,你已经掌握了如何通过debug调试器来跟PC上的设计器联调来实时查看UI设计效果.调试代码了,接下来通过一系列的demo开发教学你将很快上手学习到如何开发一个真正的App. 要开发A ...

  3. 一步一步跟我学DeviceOne开发 - 仿微信应用(一,二,三)

    这是一个系列的文档,长期目标是利用DeviceOne开发一些目前使用广泛的优质手机应用,我们会最大化的实现这些应用的每一个功能和细节,不只停留在简单的UI模仿和Demo阶段,而是一个基本可以使用的实际 ...

  4. PSP记录个人项目耗时

    PSP2.1 Personal Software Process Stage Time Planning 计划 90 ·Estimate ·估计这个任务需要多长时间 90 Development 开发 ...

  5. Powershell--批量拆分SQL语句为事务并批处理

    作为DBA,时不时会遇到将数据导入到数据库的情况,假设业务或研发提供一个包含上百万行INSERT语句的脚本文件,而且这些INSERT 语句没有使用GO来进行批处理拆分,那么直接使用SQLCMD来执行会 ...

  6. 【转】优化Web程序的最佳实践

    自动排版有点乱,看着蛋疼,建议下载中文PDF版阅读或阅读英文原文. Yahoo!的Exceptional Performance团队为改善Web性能带来最佳实践.他们为此进行了 一系列的实验.开发了各 ...

  7. 连接池技术 Connection Pooling

    原创地址:http://www.cnblogs.com/jfzhu/p/3705703.html 转载请注明出处 和数据库建立一个物理连接是一个很耗时的任务,所以无论是ADO.NET还是J2EE都提供 ...

  8. Qt QT_BEGIN_NAMESPACE

    问题 阅读Qt的Demo源码的时候,经常在头文件中, 声明类型的部分有以下这样的代码: class MyClassA; ///< 自定义类的声明 QT_BEGIN_NAMESPACE class ...

  9. DOM_03之元素及常用对象

    1.修改样式:访问内联样式:elem.style.css属性名:获得其他:var style=getComputerStyle(elem):*(* 获得焦点onfocus:失去焦点onblur:): ...

  10. loadrunner协议选择

    协议选择参考: 应用类型 协议选择 web网站 http/HTML FTP服务器 FTP 邮件服务器 IMAP\POP3\SMTP CS:客户端以ADO,OLEDB方法连接后台数据库 MS SQLSe ...