一、版本控制
1、作用
解决自动化团队之间的协同代码开发问题。
回滚到以前的一个时间点。
对代码进行日志管理。
解决代码的冲突问题
2、工具
(1)、工具介绍
工具 | 描述 |
---|---|
cvs/vss | 版本控制的老祖 |
SVN | 基于cs架构的版本控制工具,特点是:集中式的版本控制 |
Git | 目前最主流的控制工具,特点是:分布式的版本控制 |
集中式: 版本库存放在中央服务器, 操作:从服务器获得代码→操作(增删改查)→提交到服务器。必须联网(局域网)才可以操作。
分布式:版本库没有中央服务器,每个人的电脑都是一个完整的版本库,不需要联网。
Git:版本控制工具
GitHub:是一个网站,代码库是公开的,私人仓库是需要收费的。服务器的国外,是英文的
Gitee(码云):是一个网站,代码库是公开的,私人仓库免费。服务器在国内,是中文的。现在主流:Git+Gitee
GitLib:项目,在本地的Github
(2)、安装Git和注册Gitee
安装完成右键菜单中可以看到以下两个菜单:
(3)、使用Git版本控制工具
Git原理:工作区→暂存区→本地版本库→push(Gitee、GitHub、GitLib)
-
在Gitee上创建仓库
-
让本地的文件和Gitee上面的仓库关联,克隆命令:
git clone https://gitee.com/liunan23/test.git
-
新增
进入项目名为test的目录,并创建一个a.py文件
git status
查看当前版本中的改动
git add a.py
把文件提交到暂存区
git commit -m
‘注释’ 把暂存区的文件提交到本地版本库,注释:提交说明
git log
查看日志 -
修改
直接修改文件。
git status
查看当前版本中的改动
git add a.py
把文件提交到暂存区
git commit -m
‘注释’ 把暂存区的文件提交到本地版本库,注释:提交说明
git log
查看日志
多次修改时,重复以上操作
回退:还原到之前某一次提交的代码:
git reset --hard 123456
其中123456为需要回到那次提交的版本号,即 conmmit id,一般前六位以上即可。即使文件被删除,也可与恢复。
- 删除
直接删除工作区文件。
git status
查看当前版本中的改动
git add .
把文件提交到暂存区,点 表示所有的改动全部提交一次
git commit -m
‘注释’ 把暂存区的文件提交到本地版本库,注释:提交说明
git log
查看日志 - 把本地版本库里面的文件提交到gitee,git push
Q:提交代码会冲突吗?
A:如果操作的文件不一样,不会冲突,如果
3、Git和Gitee集成到Pycharm
(1)新建项目
(2)让pycharm集成Git版本控制工具
(3)让pycharm集成Gitee,先安装插件,然后绑定用户
(4)从Gitee下载项目
把项目推送到Gitee,
(5)pycharm文件颜色
无色:代表这个文件已经提交到版本库
红色:代表这个文件在工作区
绿色:代表这个文件已经提到暂存区
蓝色:代表文件有改动
(6)push时的一些报错处理:
DeployKey does not support push code fatal: Could not read from remote repository.
To have this happen automatically for branches without a tracking upstream, see ‘push.autoSetupRemote’ in ‘git help config’.