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

相关推荐
趁你还年轻_14 分钟前
记录一次git提交失败解决方案
git
*才华有限公司*37 分钟前
gRPC开发指南:Visual Studio 2022 + Vcpkg + Windows全流程配置
c++·ide·visual studio
关于不上作者榜就原神启动那件事3 小时前
git版本控制学习
git·学习
Cchaofan10 小时前
Git/GitLab日常使用的命令指南来了!
git·gitlab
无声旅者10 小时前
深度解析 IDEA 集成 Continue 插件:提升开发效率的全流程指南
java·ide·ai·intellij-idea·ai编程·continue·openapi
MonkeyKing_sunyuhua13 小时前
VSCode + Cline AI辅助编程完全指南
ide·人工智能·vscode
炒空心菜菜15 小时前
MapReduce 实现 WordCount
java·开发语言·ide·后端·spark·eclipse·mapreduce
未来之窗软件服务15 小时前
医院药品展示大屏:开启多维度服务与管理新窗口—仙盟创梦IDE
ide·智慧大屏幕·信发系统·仙盟创梦ide
MonkeyKing_sunyuhua16 小时前
在 Visual Studio Code (VSCode) 中配置 MCP(Model Context Protocol)
ide·vscode·编辑器
smileNicky16 小时前
在 VSCode 中运行 Vue.js 项目
ide·vue.js·vscode