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上远程仓库的检查,我们知道我们完成了对分支的合并。

相关推荐
梦幻通灵7 小时前
IDEA通过Contince接入Deepseek
java·ide·intellij-idea
莲动渔舟12 小时前
赶AI大潮:在VSCode中使用DeepSeek及近百种模型的极简方法
ide·人工智能·vscode·deepseek
咩咩大主教13 小时前
VSCode运行Go程序报错:Unable to process `evaluate`: debuggee is running
开发语言·ide·vscode·golang·编辑器
佛曰我不想说话13 小时前
通过VSCode直接连接使用 GPT的编程助手
ide·vscode·copilot
温酒往事·17 小时前
无缝对接[系列2]:在VSCode中继续接入本地DeepSeek的完整指南
ide·vscode·编辑器
2401_8260976219 小时前
同步&异步日志系统-日志落地模块的实现
c++·git·vim
半旧夜夏19 小时前
阿里云IOT消息处理
java·ide·git·物联网·spring·阿里云
剑客狼心20 小时前
Android Studio:RxBus 和 Observable事件流对比
android·ide·android studio
我们的五年21 小时前
【Git版本控制器】第三弹——版本回退,撤销修改,删除文件
大数据·linux·git
一名嵌入式糕手21 小时前
Git从基础到进阶
git