本文作者:HelloDeveloper
原理
什么是源码控制?
在这里,我将从高度抽象的层面描述版本控制是做什么的,以及它对于知识工作者的工作有何关联。
在知识工作者创建内容的整个过程中,会执行一系列标准任务与步骤。这里说的知识工作者可以是处理文档的设计人员,也可能是更常见的写代码的开发人员。所有这些角色在创建新事物时都有相同的行为:创建新文件、写入内容、保存文件,然后我们对这些文件进行一系列编辑和修改,然后再次保存。这些看起来是一系列简单的步骤,然而,我们如何用图形化的方式来表现呢?
版本控制的目的是帮助你在一次次的保存时澄清何时保存的、为什么保存、哪些内容被修改,从而能够在将来的任何时间对这些修改进行评审。如果我们画一张图,来展现我们对一个文件所做的修改活动,你可能需要每次都描述清楚你对文件做了什么、为什么要对其修改、并且希望工具能够自动记录文件内容发生了那些改变。
对于单个人来说,这似乎并不是什么难事,对于单个文件,看起来就是直线向前的。但是,当我们说到协作场景时,版本控制才真正发出闪耀的光芒:你和其他团队成员试图做相同的事情,甚至在同一个文件上。当你这样做时,你所需要的能力就不仅仅是为单个人提供单个文件的简单版本历史了!你必须要能够持续跟踪谁做了修改、什么时候做了修改、为什么修改,并将所有人的操作合并在一起。成熟的版本控制系统能够很好地处理你和你的团队成员对这些文件所做的相互交错的操作,并统一合并成为最终状态。
Git
Git是一种分布式现代版本控制系统,实现了一种快速的版本控制。它非常轻量化而且速度极快。同时,对任何类型的知识工作者来说,Git都很容易使用。
Git基本流程
基本的 Git 工作流程如下:
- 在工作目录中修改文件。
- 暂存文件,将文件的快照放入暂存区域。
- 提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。
Git工作示意图
如果你希望后面的学习更顺利,记住下面这些有关Git的概念。Git 有三种状态,你的文件可能处于其中之一:已提交(committed)、已修改(modified)和已暂存(staged)。已提交表示数据已经安全的保存在本地数据库中。 已修改表示修改了文件,但还没保存到数据库中。 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
由此引入 Git 项目的三个工作区域的概念:Git 仓库、工作目录以及暂存区域。
git仓库
代码仓库是Git用来保存项目元数据和对象数据库的地方。这是 Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据。
工作目录
工作目录是对项目的某个版本独立提取出来的内容。 这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
暂存区
暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。 有时候也被称作“索引”,不过一般说法还是叫暂存区域。
远程仓库
为了能在任意 Git 项目上协作,你需要知道如何管理自己的远程仓库。 远程仓库是指托管在因特网或其他网络中的你的项目的版本库。 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读写。 与他人协作涉及管理远程仓库以及根据需要推送或拉取数据。 管理远程仓库包括了解如何添加远程仓库、移除无效的远程仓库、管理不同的远程分支并定义它们是否被跟踪等等。
分支
几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。
实验部分
Chapter1: 新建代码库
Step 1:进入iCode
从项目首页点击“进入iCode”按钮。
Step 2:点击“新建代码库”按钮
Step 3:输入代码库名称
代码库名:JavaDemo
Step 4:设置代码库类型
我们在此选择“私有”,填写代码库介绍后点击确认完成代码库新建
Step 5:点击确定按钮完成创建并进入代码库
Step 6:设置HTTP密码
注意:使用Git连接到iCode代码库时,如需输入密码,请使用本步骤设置的密码!
- 点击账号设置
- 输入密码
- 再次输入密码
- 点击发送验证码按钮
- 查看手机短信并在此输入收到的验证码
- 点击保存密码按钮
Chapter2:添加成员并分配权限
Step 1:进入成员设置界面
Step 2:为子用户icode分配可读权限
- 点击“可读权限”页签
- 选择“成员”类型
- 选择子用户“icode”
- 点击“添加”按钮
Chapter3:在本机安装Git
Step 1:检查是否已经安装Git
- 执行命令git --version
- 检查是否输出当前版本信息,如果当前已经安装Git,请直接进入Step 3。
Step 2:下载并安装Git
- 如果您当前没有安装Git在浏览器中访问Git官网下载链接:https://git-scm.com/downloads
- 点击下载按钮,下载安装包并完成安装
- 如果下载没有开始,可以点击手动下载链接
Step 3:再次检查Git版本是否已经安装
Chapter4: 将范例代码导入到代码库
Step 1:下载代码库
- 创建开发目录,执行命令mkdir icode_starter && cd icode_starter
- 下载范例代码到本地,执行命令git clone https://gitee.com/devopssa_devopssa/javademo.git
Step 2:将下载好的范例代码导入到icode代码仓库
- :进入代码仓库首页,复制场景2脚本
- :将第一条脚本改为cd gs-spring-boot/,如下:
- :执行脚本
- :刷新代码仓库页面查看代码是否已经成功导入
????????????恭喜你,你已经完成了代码库的准备工作!
打卡截图
完成场景2操作的同学,请上传一张你所新建代码库的截图,要求代码库中包含真实代码:
样例:
原文链接地址:https://developer.baidu.com/topic/show/290556
来源:oschina
链接:https://my.oschina.net/u/4299156/blog/3233385