git是一款非常流行的分布式版本控制系统,使用Local Repository追踪代码的修改,通过Push和Pull操作,将代码changes提交到Remote Repository,或从Remote Repository中获取代码的最新版本,实现团队源代码的共享和管理。VS2013 集成了git插件,能够使用git进行源代码管理,比如:Merge Branch,Code Review,Code Changes的Push和Pull等,这里简单介绍一下VS2013中git插件的使用。

一,创建Repository

在使用git之前,先创建Remote Repository,用于存储源代码

比如,Remote Repository的URL是 http://xxx/git/git_test

二,管理的TargetProject

1,在VS2013中创建Database Project,命名为db_test

2,将DB的Schema同步到Project中

选中Project,点击-》Schema Compare,弹出一下窗口

  • 左边是源(Source),右边是Target,执行Compare,将Source(DB)和Target(Project)进行比较;
  • 点击Update,更新Target;

三,将Project添加到git Repository

1,将Project添加到源代码管理

2,选择源代码管理 git

第一个选项是TF 版本控制,第二个选项是Git,选择Git。

四,切换到Team Explorer

1,点击Home菜单,如果是初次使用,会提示“Install 3rd-party Git command prompt tools”,点击“install”,按照 git 命令行工具。

在Project下面有Changes,Branches,Unsynced Commits 和 Settings 选项,使用这些选项对Project进行管理

五,管理Local Branch

1,点击Branches选项,点击New Branch,在Local Repository中创建Branch

2,合并Branch(Merge Branch)

3,发布Branch(Published Branches)

  • Unpublished Branches :列出在Local Repository中创建的所有Branches
  • Published Branches :列出已经发布到Remote Repository的Branches

六,管理Changes

1,点击Changes选项

初次使用,会提示“Configure your user name and email address before committing changes”,输入Name 和 Email即可,这些配置信息,能够通过“Settings”选项查看。

2,提交修改

修改的提交(Commit) 有三种方式:

  • Commit:提交到Local Repository
  • Commit and Push:提交到Local Repository,并推送(Pull)到Remote Repository
  • Commit and Sync:提交到Local Repository,并同步(Sync)到Remote Repository

3,提交到特定的Branch

Branch选择db_test,点击Commit

4,修改已经提交到Local Repository,该Commit并没有Push 或Sync

5,未同步提交(Unsynced Commits)

点击"Unsynced Commits"选项,初次使用,需要输入Remote Repository的URL

6,发布到Remote Repository

输入Remote Repository的URL,点击Publish,将提交到Local Repository的Commit,同步到Remote Repository

七,管理代码同步

在“Unsynced Commits”选项中,能够对当前的Branch进行代码Changes的Fetch,Pull,Push操作。Unsynced Commits 的含义是指Local Repository没有同步到Remote Repository,也指Remote Repository没有同步到Local Repository,因此,Sync 按钮的作用是Pull 和 Push的封装。

1,获取当前Branch的最新版本(Incomming Commits)

Fetch 和 Pull 都是从当前Branch获取代码的最新版本,但是Pull和Fetch是有区别的:Pull=Fetch+Merge:

  • Pull :下拉远程分支并与本地分支合并,git Pull会将Local Branch更新至Remote Branch的最新状态;
  • Fetch:只是下拉远程分支,不会自动执行Merge操作;

当Remote Repository中有Incomming Commits时,推荐使用git Pull来获取当前Branch的最新版本。

2,将代码修改Push到Remote Repository(Outgoing Commits)

当存在Unsynced Commits时,通过git Push,将提交到Local Repository的代码Changes同步到Remote Repository。

八,发布Branch

必须配置Remote Repository之后,才能发布Branch,将Local Branch发布到Remote Repository。

操作步骤:在“Branches”选项中,从“Unpublished Branches”列表中选择Branch,点击右键,选择“Publish Branch”,将该Branch发布到Remote Repository中。

九,创建Code Review请求

在TFS中,能够将代码的changes发送到同事,请求对代码进行审查(Code Review),在git中,也能实现Code Review,不过,名称叫做Pull Request,VS2013中的git插件,不能创建Pull Request,必须通过Web客户端来创建Pull Request。

创建Pull Request的流程是:

1,首先将Branch发布到Remote Repository,即Publish Branch

2,创建Pull Request

点击"Create a pull request",创建Pull Request

3,输入Reviewers,并关联Work Items

注意,Pull是把Brach和其他Brach进行合并,必须注意要合并的Target Branch。

十,克隆Repository,获取Remote Repository中代码的最新版本

点击"Connect to Team Projects",输入Remote Repository的URL,将Remote Repository复制到Local Repository中。

参考文档:

vs2013 git 使用总结

使用GIT进行源码管理 —— 在VisualStudio中使用GIT

Git和Code Review流程

git fetch和git pull之间的区别

Git 少用 Pull 多用 Fetch 和 Merge

使用git进行源代码管理的更多相关文章

  1. 基于git的源代码管理模型——git flow

    基于git的源代码管理模型--git flow A successful Git branching model

  2. VS.net 2013中使用Git建立源代码管理 版本管理

    第一次在VS2013中使用Git,也是第一次使用Git,各种不熟悉.百度各种使用经验,大都不屑于使用VS2013集成的Git,建议下载这个下载那个,我也照学了,确实能实现项目的提交.同步.合并的工作, ...

  3. VS2017使用Git进行源代码管理

    步骤一:将解决方案添加到源代码管理 步骤二:进入团队资源管理器 双击存储库项目进入Git操作页面. 步骤三:同步本地代码到远程仓库 选择同步功能 步骤四:发布代码到Git 点击之后输入你要发布的git ...

  4. [转]VS2013中使用Git建立源代码管理

    本文转自:https://blog.csdn.net/bodybo/article/details/38976549 第一次在VS2013中使用Git,也是第一次使用Git,各种不熟悉.百度各种使用经 ...

  5. VS2013中使用Git建立源代码管理

    原文:http://blog.csdn.net/bodybo/article/details/38976549/ 第一次在VS2013中使用Git,也是第一次使用git,各种不熟悉.百度各种使用经验, ...

  6. vs code 使用Git进行源代码管理

    第一步:用vs code 打开一个空文件夹,如本示例Demo2, 第二步:点击左侧第三个图标“源代码管理”,然后再点击初始化存储库按钮 初始化之后界面现变成下图所示: 此时文件夹中会新增一个隐藏文件夹 ...

  7. ubuntu14.04,安装Git(源代码管理工具)

    在shell中执行:sudo apt-get install git-core

  8. ubuntu - 14.04,安装Git(源代码管理工具)

    在shell中执行:sudo apt-get install git-core

  9. Git源代码管理

    一. 分支管理 使用 git 进行源代码管理,一般将某个项目的所有分支分为以下几条主线 1. Master 顾名思义,既然名字叫 Master ,那么该分支就是主分支的意思. master 分支永远是 ...

随机推荐

  1. H5实现摇一摇技术总结

    摇一摇遇到的问题 一.如何对摇晃效果进行反馈 刚开始的处理方式是,摇晃过程中不做任何处理,但后来反馈说这种效果不好,好像就没有摇动一样,如果声音也不响的话,就真的和什么都没发生一样. 后来想了想,加入 ...

  2. Java 征途:行者的地图

    前段时间应因缘梳理了下自己的 Java 知识体系, 成文一篇望能帮到即将走进或正在 Java 世界跋涉的程序员们. 第一张,基础图 大约在 2003 年我开始知道 Java 的(当时还在用 Delph ...

  3. nodejs中获取时间戳、时间差

    Nodejs中获取时间戳的方法有很多种,例如: new Date().getTime() Date.now() process.uptime() process.hrtime() 平时想获取一个时间戳 ...

  4. 主成分分析(PCA)原理总结

    主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一.在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用.一般我们提到降维最容易想到的算法就 ...

  5. Servlet监听器笔记总结

    监听器Listener的概念 监听器的概念很好理解,顾名思义,就是监视目标动作或状态的变化,目标一旦状态发生变化或者有动作,则立马做出反应. Servlet中的也有实现监听器的机制,就是Listene ...

  6. python基础

    内容概要: 一.python2 or python3 目前大多使用python2.7,随着时间的推移,python3将会成为python爱好者的主流. python2和3区别: 1.PRINT IS ...

  7. java web学习总结(五) -------------------servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  8. 【SAP业务模式】之ICS(五):定价配置

    本篇博文讲述ICS业务中的定价配置. 1.定义销售订单类型 目录:SPRO-销售与分销-销售-销售凭证-销售凭证抬头-定义销售凭证类型 事务代码:VOV8 2.定义销售订单类型 目录:SPRO-销售与 ...

  9. atitit.细节决定成败的适合情形与缺点

    atitit.细节决定成败的适合情形与缺点 1. 在理论界有两种观点:一种是"细节决定成败",另一种是"战略决定成败".1 1.1. 格局决定成败,方向决定成败 ...

  10. RTP与RTCP协议介绍(转载)

    RTSP发起/终结流媒体.RTP传输流媒体数据 .RTCP对RTP进行控制,同步.RTP中没有连接的概念,本身并不能为按序传输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由RTCP来负责完 ...