SVN与Git的使用与区别
1.SVN是集中式版本控制工具,所以需要一台中央服务器,中央服务器可安装VisualSVN Server,创建有架构的仓库,并创建相应的用户或组别,为仓库配置号仓库后,客户端可安装TortoiseSVN,安装后在想上传的项目文件层检索出对应的主干,增加后再提交即可上传项目到SVN服务器。
在团队协同开发时,SVN最好先更新同步代码,有冲突则解决冲突,无冲突再增加后提交代码。
2.Git是分布式版本控制工具,每个终端都是一个版本库,git add是新增到暂存区,git commit是提交到本地版本库,git push是推送到远程仓库
(1)四个工作区域
Git本地有四个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)、git仓库(Remote Directory)。文件在这四个区域之间的转换关系如下:
Workspace: 工作区,就是你平时存放项目代码的地方
Index / Stage: 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
Repository: 仓库区(或版本库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
Remote: 远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)
(2)拉取和获取 pull 和 fetch 区别 与 git的使用
拉取git pull 从远程仓库拉取最新版本 到本地 自动合并 merge git pull origin master
获取(提取)git fetch 从远程仓库获取最新版本 到本地 不会自动合并 merge git fetch origin master
实际使用中 使用git fetch 更安全 在merge之前可以看清楚 更新情况 再决定是否合并
git可集成到vs使用,Visual Studio 2019中自带Git功能,Visual Studio 2019 V16.8之前的版本中Git功能还是在团队资源管理器中,Visual Studio 2019 V16.8之后的版本中Git功能已经移动到“Git更改”和“Git存储库”两个相关功能中
在Visual Studio 的菜单栏上选择“工具—》选项”,在弹出的选项对话框的左边选择源代码管理,在“插件选择”中选用Git作为源码代码插件
Visual Studio 2013/2015/2017等版本的,点击“工具”的“扩展与更新”,可以安装GitHub Extension for Visual Studio。它安装之后不但可以使用,也自动在Visual Studio中加上插件,可以在Visual Studio中非常直观的、方便的操作。
安装完,然后点击vs菜单的“工具”的“选项”,展开左侧的“源代码管理(Source Control)”,在右侧的“当前源代码管理插件”中选择“Git”
更改:(1)全部提交:全部提交到本地存储库,还需要额外点击推送才能同步到远程仓库 (2)全部提交并推送:直接全部提交本地仓库并推送到远程仓库 (3)全部提交并同步:全部提交到本地存储库,再从远程仓库拉取最新代码并自动合并merge,最后再把代码推送到远程仓库。