git使用教程14-Pycharm版本控制与分支管理

一、版本控制

1、版本控制介绍

(1)Version Control System 版本控制系统,简称VCS。

(2)版本控制系统分类:

集中式版本控制工具:SVN

分布式版本控制工具:Git

2、Pycharm 支持的版本控制工具种类

Git:免费、开源的分布式版本控制系统。

Mercurial:也是一种分布式版本控制系统,采用 Python 语言实现。

Subversion(SVN):简称SVN,集中式的版本管理系统。

Perforce(P4) :简称P4, 是一款非常优秀的商业化版本管理工具,Pycharm专业版才有。

3、Pycharm 版本控制相关界面

(1)版本控制界面(VCS)

(2)Git 命令界面(配置好git 后显示)

(3)版本控制设置界面

Pycharm配置git
  • Window Pycharm配置git

在使用pycharm进行版本管理之前,我们要先进行git信息的配置。

File -> settings -> Version Control

按步骤配置完成后,点击Test测试是否配置成功。

Pycharm安装gitee插件

pycharm没有直接集成gitee,需要先安装gitee插件,步骤如下:

在Setting中选择Plugins

在Marketplace下搜索框中搜索git

点击Install进行下载安装

安装完后点击重启 pycharm

Pycharm关联gitee账号

File -> Setting -> 搜索gitee

点击加号,选择Login To Gitee

输入账号密码进行登陆

本地项目分享到gitee

选择VCS -> 选择Share Project On Gitee

Repository name上传的项目名(也就是在Gitee上创建的库的名称),根据实际情况这里可以改也可以不改,勾选上私有,点击Share,这时候仓库就创建成功了。

在Gitee查看仓库是否创建成功。

创建已经存在,证明创建成功了

commit文件,将文件提交到提交到本地仓库,可以输入一下我们的提交信息,方便记录

点击commit按钮

commit之后,我们需要通过push将本地仓库内容推送到远程仓库

完成push之后,我们可以在Gitee上查看是否已经推送成功

这样我们就完成了本地项目通过git来进行版本控制的工作。

代码版本管理

现在敏捷开发的模式下,分支开发,主干发布的情况是普遍存在的,我们如何来实现对代码版本的有效管理?pycharm给我们提供了这样的功能。

单分支存在的问题

代码中至少有一个分支,就是主干分支或称主分支Master,默认都是在主分支上开发

上图图中绿色节点表示每一个提交commit

项目往往是并行多人开发的,都在主分支上克隆,然后修改提交,那么主分支就会存在大量的冲突,甚至有一些不完善代码提交,主分支就混乱不堪,不可维护了。

再一个,如果一次提交后,需要发布一个版本,这个版本以后就需要独立维护、开发,而主分支还需要继续发展,这时候就需要引入多分支来对项目进行管理。

多分支创建和使用

进行多分支管理时,我们需要坚持下列原则

分支名必须唯一

不能以 _ 开头

可以使用 / 但是不能以它结尾,被它分割的名称不能以 . 开头

不能包含任何空白字符,Git的特殊符号


创建新分支

查看当前所处分支 git status

我们可以通过命令或者在界面上查看自己当前所处分支

创建新分支

注:如果勾选了检出分支,会切换到创建的新分支

现在我们要将新的脚本上传到新建的分支上,比如demo2.py

将提交后的代码推送到远程的dev分支

切换到master分支,将dev分支合并到master分支上,并推送至远程master分支

将dev的代码合并到master上,这样就会实现dev分支总是开发中的代码,dev测试、审查后合并master中,master分支都是稳定的代码,可以发布

通过对Gitee上远程仓库的检查,我们知道我们完成了对分支的合并。

相关推荐
MoonBit月兔34 分钟前
双周报Vol.70: 运算符重载语义变化、String API 改动、IDE Markdown 格式支持优化...多项更新升级!
ide·算法·哈希算法
ikkkkkkkl2 小时前
Git基本操作
git
和算法死磕到底2 小时前
ubantu18.04(Hadoop3.1.3)之Spark安装和编程实践
大数据·hadoop·pycharm·spark
互联网搬砖老肖3 小时前
git 的基本使用
大数据·git·elasticsearch
心之所向,自强不息4 小时前
关于Android Studio的Gradle各项配置
android·ide·gradle·android studio
程序猿chen5 小时前
量子跃迁:Vue组件安全工程的基因重组与生态免疫(完全体终局篇)
前端·vue.js·git·安全·面试·前端框架·跳槽
一点.点5 小时前
李沐动手深度学习(pycharm中运行笔记)——05.线性代数
pytorch·笔记·python·深度学习·pycharm·动手深度学习
SunTecTec6 小时前
Idea 配置 Git
git
chxii7 小时前
2.4.5goweb项目上传到csdn的git仓库
git
清风徐来QCQ7 小时前
git和github的使用指南
git·github