VS中使用Git的方法
注:本文以VS2017+Gitee为例进行介绍。分别介绍了如何向新建的远程仓库推送项目、如何从本地代码仓库加载项目以及如何从远程代码仓库加载项目。
目录
1 向新建的远程仓库推送项目
1.1 新建远程仓库
登录Gitee选择创建仓库,一定要创建空仓库不需要进行初始化。
填写仓库名称,其他所有选项维持默认。点击最下方的创建按钮。
创建成功后会跳转到如下页面,复制图中的仓库地址(后面会在VS中使用)。
1.2 新建VS项目
以新建C++空白项目为例,创建时勾选“新建GIT存储库”和“为解决方案创建目录”(为了将项目的配置文件和源代码分隔开来)
1.3 使用团队资源管理器
所有的GIT相关操作都将在团队资源管理器中进行,可以看到新建的Project2已经在本地GIT存储库中显示。
1.3.1 项目主页
双击上图本地GIT仓库中得Project2项目,进入项目主页,如下图所示。
项目一栏有更改、分支、同步、标记和设置项。除了进入主页后可以选择项目,也可以通过最上方的“项目名”旁边的按键进行切换。如下图所示。
1.3.2 更改
点击更改之后会进入如下的页面。有更改的地方会在更改数出列出,根据更改填写输入消息后才可提交。
在项目中新建“源.cpp”文件后管理器显示如下。在信息栏添加了信息之后可以进行提交,提交的方式有三种:
全部提交:提交到本地的仓库。
提交并推送:提交到本地仓库并推送到远程仓库,如果远程仓库已经有其他人推送过那么本次操作就会失败。
提交并同步:提交到本地仓库并且当远程仓库有新的提交之后,将本地和远程进行同步(合并后推送到远程)。
点击全部提交,效果如下,提示已提交成功。
现在修改“源.cpp”文件,再次查看更改页面。列出了更改的文件,双击文件即可与未修改前的文件进行比对。
比对效果图如下。
选择提交并推送。会显示未配置远程存储库,点击发布GIT存储库按钮。
在文本框中填入在步骤一中创建的远程仓库的URL(必须使用HTTPS的地址)。并点击发布按钮,会向远程仓库推送代码,推送完毕后自动返回主页。
Gitee的仓库中会显示推送成功,可以看到推送的所有文件及信息 。
1.3.3 同步
在同步页面可以进行同步、提取、拉取和推送的操作。
同步:感觉像是在自动同步(拉取合并后自动推送,而拉取不会推送),出现冲突的时候是和拉取的效果是一样的。需要解决了冲突后重新提交并推送。
提取:单纯的提取远程仓库的版本到本地不进行其他操作。提取出来做什么用还得研究,请大神赐教。
拉取:是指从远程仓库拉取到本地,并进行比较,标出冲突。如果远程仓库被其他开发者推送,拉取时会将冲突(指两个开发者修改了同一处代码)的地方标出。
推送:是指将本地仓库的提交推送到远程仓库。
拉取冲突情况如下,HEAD下面标出本地仓库的提交,===后是从远程仓库拉取的。
点击下图中的”冲突”按钮,进入下面的解决冲突页面
单击列出的冲突文件”源.cpp”,可以选择按何种方式解决冲突。冲突解决完毕后点击提交合并,返回更改页面重新提交并推送。
1.3.4 分支
在分支页面可以进行新建分支、合并、变基三种操作
新建分支:以一个分支为基础新建分支,新建分支与基准分支完全相同。
合并:将两个分支进行合并。
变基:更换当前工作的分支。
点击新建分支,选择一个基准分支,以此分支为基准新建分支。新建分支后会自动切换到新建的分支。可在“同步页面”将新建的分支推送到远程仓库。
合并是将两个分支合并,选择要合并的两个分支。
变基是切换分支的意思,从当期的分支切换到别的分支。
2 从本地仓库加载项目
打开VS2017并定位到团队管理器,可以看到之前创建的项目已经显示在列表中,点击添加按钮可以指定位置导入本地的代码仓库。
点击添加后选择本地的仓库的路径,这里我的仓库存在下面的路径中。
这是添加后的效果,将指定路径中的项目添加进来了。
双击项目即可进入项目主页,如果此项目包含了解决方案文件(*.sln)可以打开此解决方案,如果不包含则只能对单个文件进行编辑。
3 从远程仓库加载项目
打开VS2017并定位到团队管理器,选择克隆操作。指定要克隆的URL以及克隆到本地的位置。
填写完毕后点击克隆按钮。
效果如下,已经正常克隆到了本地。双击打开找到解决方案文件即可在解决方案管理器打开项目。
结束。