VS中Git使用教程

现在的VS都自带Git插件,用起来很方便,能将VsCode前端和VS后端一起提交,缺点:Word文档和Excel表没法协同处理冲突。

基本上的常用操作都已经涵盖在内了,能够满足日常开发所需。

自己用了一年时间,做些总结。

1、新建、克隆

新建项目、克隆项目个人还是习惯用原始的方式。

微软收购Github后,VS在git、GitHub上也做了很多优化。从新建远程代码仓库,到克隆、拉取、推送、管理分支,基本都能通过VS完成。

最基本的克隆等,建议直接参考微软官方文档

Visual Studio 中的 Git 体验 | Microsoft Learn

通过命令行克隆也可以,只要问价夹或者项目下有“.git”文件夹(隐藏文件夹),并有正常的git相关配置文件,VS都会识别到,git插件功能也能正常使用。

2、基础操作:拉取、提交、推送

2.1 功能在哪

VS顶部菜单中有【Git(G)】,里面是Git常用操作。

还有就是在【视图】菜单中打开【Git更改】和【Git存储库】

【Git更改】视图中主要用于处理 拉取、暂存、提交、推送、合并等操作。

【Git存储库】视图主要是查看以往提交、查看分支、操作分支等。

2.2 简单操作

【Git更改】窗口顶部的几个按钮,包括 提取、拉取、推送、同步...

提取:就是从远端仓库获取最新的代码,但是不应用,类似于“检查更新”

拉取:及“获取并应用更新”的意思。

推送:就是用本地更新云端仓库。

同步:就是先拉取,在推送。

当有文件修改后,【更改数】下面就会列出发生更改的文件。

文件名末尾会有“+”号。

点击“+”号,文件就会被收纳到【暂存更改】下。

点击“+”,就类似于通过命令行执行“git add”操作。

只有add了的修改才能被提交。

提交:

将要提交的文件点击“+”,编辑合适的提交信息,点击【提交临时数据/全部提交】按钮。即可提交。

提交只是在本地分支建立了版本号,可以理解为一种“本地存档”。

提交后VS会提示“已本地创建 提交 xxxx”

在【Git更改】能看到 传出和传入的个数

接下来就需要“推送”,点击【Git更改】d顶部的向上箭头按钮,即执行推送(push)。即向远程仓库同步。

3、暂存、存储

抛开“Visual Studio”不谈,暂存和存储说的是一回事,即“git stash ”。

但在VS中,可能是微软的蜜汁官翻的尴尬,不过也确实找不到合适的词语来描述。

在VS中,暂存是指“git add”,存储是指“git stash”。所以,就像前面提到的,改动文件点击“+”后,会归到【暂存更改】的节点下。然后才能提交和推送。

接着再来说说“存储”

在有文件改动后,点击提交按钮右边的箭头,在下拉菜单中能看到【全部存储(T)(--include-untracked)】和【全部存储并保持暂存(S)(--保留索引)】

要区分这两个选项到底什么意思,需要先了解下“git stash”。

git stash

可以参看下其他博客:

git stash详解

Git Stash命令的使用

简单的说,就是将当前更改保存起来,或者理解为打包藏起来。

git stash pop
git stash apply
上面两个都是将存储重新应用,不同的是“pop”是重新应用并丢弃存储。“apply”是重新应用的同时还保留存储。

VS中的存储:

【全部存储(T)(--include-untracked)】:就是字面意思,全部存储,无脑全存,傻瓜式,管你时暂存还是更改,文件时候ignore,是否track,全存。

后面括号中的(--include-untracked),就是包含非追踪文件,就是即使“.gitignore”中已经忽略的文件发生更改,也存。

存储结果就是你的【更改数】【暂存更改】节点下所有东西都被保存且不在显示。

【全部存储并保持暂存(S)(--保留索引)】:类似与全部存储,但“并保持暂存”是说,之前点过“+”,在【暂存更改】下的虽然会被存储,但不会被清理。方便你的下一步提交操作。所谓“--保留索引”是什么意思呢,索引就是当“git add”(点“+”)之后,这些更改就会生成版本号,或者叫索引,由一串字符表示。

存储后如何应用呢?

在【Git更改】窗口中的【存储】节点下,右击某一条存储,弹出的菜单中,【应用】就对应前面提到的“git stash apply”

【弹出】 就对应前面提到的“git stash pop”

【放下】就是丢弃删除某个存储的意思。

在【弹出】【应用】中的次级菜单中又有【应用/弹出并还原暂存】和【将所有项作为非暂存应用/弹出】结合前面存储时的“保留暂存”,应该很好区分,前置是吧原来是暂存的恢复为暂存,后者是一股脑全部撤销暂存都当多普通更改进行应用/弹出。

4、冲突及解决冲突

上面只是对一些基础操作的介绍,单人单终端开发基本不回有什么问题。但当多人协同开发,或者多设备开发时,就有可能发生冲突,即同一个文件在不同的本地上修改了。

什么时候会出现冲突?

应用/弹出一个暂存时,或者合并一个分支到另一个分支时。这些时候都可能出现冲突。

出现冲突的文件会出现在【未合并的更改】节点下。

双击每个未合并的文件项,就能进行处理冲突的合并了

右上角的设置可以调整视图,默认是上面这种上二下一的视图,上面的两个一边是“他们的”,一边是“我们的”(微软翻译一直可以的)

“我们的”就是本地的、当前分支现有的。

“他们的”就是从其他地方引入的,比如从存储中解除封印释放出来的。

两个版本的差异之处会被标记出来,行前会出现复选框,对比后勾选需要采用的一边,或者两边都需要采用,就都勾选。

底部的视图时合并后的结果,当所有的差异处都处理完毕后,可以点击左上角的【接受合并】即完成该冲突项的解决。

所以的冲突项解决后,即可继续合并或提交了。

4、分支的新建、删除、合并、变基

4.1 新建分支


新建分支一种是在github/gitlab上直接操作,创建好后再拉取新建的分支。

也可以在VS中完成。

在【Gir存储库】视图中,展开远端仓库分支列表,选择新分支的基础分支,即需要从那个分支创建新分支,

点击鼠标右键

在菜单中点击【新建本地分支位置】

接着,会弹出新建分支的对话框,需要输入新分支的名称。

其下方有两个复选框

【签出分支】:即现创建一个分支,并且自动切换到新创建的分支上。不勾选即不切换,还停留在原先的分支上。

【跟踪远程分支】:即指明新创建的分支是一个远程跟踪分支,何为“远程跟踪分支”,可以多百度一下,大概可以理解为这个分支允许直接操作远端仓库,和远端是实时同步的,提交就等同于推送。一般不勾选!

点击【创建】后即在本地创建了一个分支

切换到新创建的分支上(之前没有勾选“签出分支”的话就邮件选择“签出”)。

然后右键新创建的分支,选择【推送】,即将创建分支的动作同步推送到远端,远端仓库也会有相同的分支。

4.2 删除分支

删除分支很简单,前提是不能删除当前所处的分支,且需要先删除本地分支才能删除远端分支。

例如前面的步骤后,先切换到“master”分支,然后右键本地“dev”分支,就可以点击【删除】了,删除了本地的分支,就可以用相同方式删除远端分支。

4.3 合并分支

合并分支只能在本地分支上操作,然后推送到远端。

合并就是将一个分支上代码的修改合并到另一个分支上。

操作还是在【Gir存储库】视图中。逻辑是将其他分支合并到当前分支,选中要合并过来的分支,右键

4、其他:撤销、还原
有些操作可能还是需要通过指令来执行,在VS的终端里也可以执行git命令。

这里记录一些常用的:

查看本地分支列表:git branch
获取远端分支列表:git branch -r
更新远端分支列表:git remote update origin -p或者git remote prune origin
点击提交后想要撤回:git reset --soft HEAD~

  • 8
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Visual Studio使用Git是非常方便的。从Visual Studio 2012开始,就通过标准插件实现了对Git的支持。在Visual Studio 2013Git甚至被直接集成到IDE。Visual Studio 2015也提供了对Git的支持,使得源代码的版本控制更加简单和便捷。 如果遇到在配置SSH KEY时将分支发布到远程存储库时出现错误,例如响应状态代码为403 Forbidden,这是因为Visual Studio 2015集成的Git不支持SSH协议。可以通过安装【GitHub Extension For Visual Studio】插件来解决这个问题。 安装【GitHub Extension For Visual Studio】插件非常简单。只需在Visual Studio打开工具栏,然后选择工具,再选择扩展和更新。在扩展和更新窗口,搜索并安装【GitHub Extension For Visual Studio】插件即可。 对于那些习惯于使用SVN和TFS的开发者来说,学习使用Git可能需要一些勇气。然而,考虑到Git的流行和开源世界的发展,学习Git可以帮助我们更好地与开源社区互动和学习。同时,掌握Git的基本使用只需要很短的时间。 总结来说,在Visual Studio使用Git进行版本控制是非常方便和灵活的,你可以通过安装【GitHub Extension For Visual Studio】插件来解决一些特定的问题。同时,学习Git也是一个非常有价值的技能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Visual Studio 配置Git 工具](https://blog.csdn.net/q13554515812/article/details/83513713)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Visual StudioGit的简单使用](https://blog.csdn.net/sD7O95O/article/details/129053046)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值