源代码管理工具

为什么要使用源代码管理工具?

1、记录:记录一个项目从开始到结束的整个过程

2、追踪:追踪项目中所有内容的变化情况

3、版本控制:可以清楚的知道每个版本之间的异同点

4、权限控制:防止代码混乱,提高安全性,防止一些不必要的损失和麻烦

5、责任追究:防止互相推卸责任,可以清楚的知道谁对哪个文件进行了什么修改,导致了项目无法正常运行。

6、回退处理:执行了错误的操作之后还可以有补救的机会

 

对开源代码进行管理的意义

1、增强开源管理意识,制定开源管理策略

2、及时、有效的发现所使用的开源软件及其风险

3、让开源管理成为研发流程的一部分

 

Git的简介:

1、什么是git?
git是一款开源的分布式版本控制工具,可以有效、高速的处理从很小到非常大的项目版本管理。
2、git的起源
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
3、git的现状
在国外已经非常普及,国内在慢慢普及,越来越多的开源项目已经转移到git。

 

(分布式版本控制)

 

Git的安装方法:

第一步:双击下载后的Git-2.21.0-64-bit.exe,开始安装

第二步:选择安装路径,点击[next]

第三步:在窗口中选择组件,添加勾选倒数第二个组件:在所有命令行中使用Truetype字体,点击[next]

第四步:选择默认编辑器,我日常使用Vscode作为编辑器,勾选使用 Visual Studio Code 作为 Git 的默认编辑器,点击[next]

第五步:[创建文件夹]界面,选项默认,点击[next]

第六步:[修改系统的环境变量]界面,我勾选的第二个选项,点击[next]

  • 选项一,不会修改系统环境变量,但是Windows系统cmd命令行中无法使用git命令

  • 选项二,会将git相关程序加入系统环境变量中,使得Windows系统cmd命令行中可以使用git命令

  • 选项三,会将git相关程序以及一些其他的Unix工具加入系统环境变量,使得Windows系统cmd命令行中可以使用git以及Unix工具。要注意的是,这将覆盖Windows工具,如 “ find 和 sort ”。只有在了解其含义后才使用此选项。

第七步:选择SSH可执行文件,选择开源代码,点击[next]

第八步:选择HTTPS传输后端,使用OpenSSL 库,点击[next]

  • 选项一,使用 OpenSSL 库

  • 选项二,使用本地 Windows 安全通道库

选择HTTPS传输后端

第九步:配置行结束转换,默认选择第一项配置,点击[next]

  • 选项一,选项让Git能够自动转换文件中的换行符;签出到本地时转换为Windows下的换行符,提交到服务器时转换为Unix下的换行符

  • 选项二,选项让Git在签出到本地时不做转换,保留原始文件的换行符;提交到服务器时转换为Unix下的换行符

  • 选项三,让Git在签出到本地时和提交到服务器时都不做转换

第十步:配置终端模拟器以与 Git Bash 一起使用,默认选择第一项配置,点击[next]

  • 选项一,Git Bash将使用MinTTY作为终端模拟器,该模拟器具有可调整大小的窗口,非矩形选区和Unicode字体

  • 选项二,选项使用Windows系统cmd命令行来作为Git命令行

第十一步:配置额外的选项,默认配置即可,点击[Install]

  • 选项一,启用文件系统缓存

  • 选项二,启用Git凭证管理器

  • 选项三,启用符号链接

第十二步:等待安装完成

第十三步:验证

在Vscode中找到Terminal工具栏,新建Terminal,输入“git help”验证是否能够调用git说明,如可以调用,则安装成功。

https://www.jianshu.com/p/bebba0d8038e
 

Git的工作流程

分布式和集中式的最大区别在于:在分布式下
开发者可以本地提交
每个开发者机器上都有一个服务器的数据库
拥有一个本地的代码仓库

工作区(Working Directory):仓库文件夹里除.git目录以外的内容
版本库(Repository):.git目录,用于存储记录版本信息
暂缓区(stage)
分支(master):git自动创建的第一个分支
HEAD指针:用于指向当前分支
git add和git commit的原理
git add :把文件修改添加到暂存区
git commit :把暂存区的所有内容提交到当前分支

 

Git的优势:

1、适合分布式开发,强调个体。

2、公共服务器压力和数据量都不会太大。

3、速度快、灵活。

4、任意两个开发者之间可以很容易的解决冲突。

5、离线工作。

 

Git的劣势:

1、学习周期相对而言比较长。

2、不符合常规思维。

3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

 

posted @ 2021-05-30 23:39  Echo糕  阅读(198)  评论(0)    收藏  举报