PyCharm 集成 Git

目录

1、配置 Git 忽略文件

2、定位Git

3、使用pycharm本地提交

3.1、初始化本地库

3.2、添加到暂存区

3.3、提交到本地库

3.4、切换版本

4、分支操作

4.1、创建分支

4.2、切换分支

4.3、合并分支

5、解决冲突

1、配置 Git 忽略文件

作用:与项目的实际功能无关,不参与服务器上部署/实际代码的执行。把它们忽略掉能够屏蔽 IDE 工具之 间的差异。

配置步骤:

1、安装.ignore插件

  • File --- Setting --- Plugins --- 输入.ignore --- install【安装.ignore插件】

2、创建.gitignore文件

  • File --- New --- .ignore file --- .gitignore file (Git) --- 创建.gitignore文件

3、编辑.gitignore文件

  • 打开.gitignore文件,此时系统已经默认忽略了某些文件;也可以手动添加或删除要忽略的文件。

.gitignore 文件,每行的忽略规则的语法如下:

  • 空格不匹配任意文件,可作为分隔符,可用反斜杠转义
  • #开头:标识注释,可以使用反斜杠进行转义
  • ! 开头:标识否定,该文件将会再次被包含,如果排除了该文件的父级目录,则使用 ! 也不会再次被包含。可以使用反斜杠进行转义
  • / 结束:只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
  • / 开头:匹配文件
  • 如果一个模式不包含斜杠,则它匹配相对于当前 .gitignore 文件路径的内容,如果该模式不在 .gitignore 文件中,则相对于项目根目录
  • ** 匹配多级目录,可在开始,中间,结束
  • ​​? ​​通用匹配单个字符
  • [] ​​通用匹配单个字符列表

常用匹配示例:

  • bin/ :忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
  • /bin :忽略根目录下的bin文件
  • /*.c :忽略 cat.c,不忽略 build/cat.c
  • debug/*.obj : 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
  • **/foo : 忽略/foo, a/foo, a/b/foo等
  • a/**/b : 忽略a/b, a/x/b, a/x/y/b等
  • !/bin/run.sh : 不忽略 bin 目录下的 run.sh 文件
  • *.log : 忽略所有 .log 文件
  • config.php : 忽略当前路径的 config.php 文件

4、.gitignore文件更改后不生效怎么办?

原因:新增的忽略文件只对工作区生效,对在暂存区的文件、本地仓库、远程仓库的文件是无效的,所以最好在新建项目之初就新建忽略文件。

解决办法:

  • 1、先删除暂存区的文件
  • 2、再使用命令 git add . 将本地文件添加到暂存区中
  • 3、然后再提交到本地仓库
  • 4、最后再推送到远程仓库

git rm -r --cached .
git add .
git commit -m "update .gitignore"

5、pycharm中使用git后的各文件颜色说明:

  • 被.ignore忽略的文件,颜色是:黄色
  • 在本地工作区的文件,颜色是:红色
  • 添加暂存区的文件,颜色是:绿色
  • 提交到本地仓库的文件,颜色是:变成正常色 白色
  • 推送到远程仓库的文件,颜色是:白色

2、定位Git

1、File->Settings->Git

3、使用pycharm本地提交

3.1、初始化本地库

1、VCS->Create Git Repository

2、选择需要初始化本地库的文件

3、初始化成功后所有文件颜色变成:红色 所有文件待添加到暂存区

3.2、添加到暂存区

1、右键项目->Git->Add 将项目添加到暂存区

2、可以看到项目颜色变成绿色,说明已经添加到暂存区了

3.3、提交到本地库

1、右键项目->Git->Commit Directory 将项目提交到本地仓库

2、选择需要提交的项目,并备注提交信息。

3.4、切换版本

1、在 pycharm 的左下角,点击 Git,然后点击 Log 查看版本

2、选项需要切换的历史版本->右键->Checkout Revision (对应的版本号的前8位)

3、查看切换版本是否成功

  • 切换之前的内容和指针指向情况

  • 切换后的内容和指针指向情况

4、分支操作

4.1、创建分支

1、项目右键->Git->New Branch 或者 右下角版本号->New Branch

2、填写分支名称,创建 hot-fix 分支。

4.2、切换分支

1、项目右键->Git->Bramches->选择需要切换的分支->点击“>”->点击Checkout

或者 点击右下角hot-fix分支->点击需要切换的分支->点击Checkout 进行分支切换

 2、查看分支是否切换成功

4.3、合并分支

1、在 pycharm 窗口的右下角,将 hot-fix 分支合并到当前 master 分支。

  • 点击右下角master分支->点击hot-fix分支->点击Merge Selected into Current 进行分支合并
  • 如果代码没有冲突,分支直接合并成功,分支合并成功以后,代码自动提交,无需手动 提交本地库。

5、解决冲突

注意:在实际工作中,在本地合并分支时,通常需要先切换到目标分支(如master),然后拉取该分支最新的代码,再进行合并操作。

1、如图所示,如果 master 分支和 hot-fix 分支都修改了代码,在合并分支的时候就会发生 冲突。

注意:修改文件一定要先提交到本地仓库,然后切换到master分支,最后把hot-fix分支合并到master分支,再把合并后的代码提交到本地仓库

2、切换搭配master 分支,然后合并 hot-fix 分支,就会发生代码冲突。

3、点击Merge按钮,手动合并代码

4、手动合并完代码以后,点击右下角的 Apply 按钮。

5、手动合并完成后,需要手动提交到本地仓库

  • 过程同上:先添加到暂存区,然后提交到本地仓库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/10636.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

问题:幂等性 分布式session

web项目中请求线程到service层的时候远程调用服务之前是串行化执行每个任务都要get阻塞等待任务完成,举例当用户在购物车页面点击去结算就会请求后台toTrade请求获取订单确认的详情数据并渲染到订单详情页,现在在toTrade请求中使用异步任务编排Completab…

Linux下安装mysql8.0(以tar.xz包安装--编译安装)

前言:原文在我的博客网站中,持续更新数通、系统方面的知识,欢迎来访! Linux下安装mysql8.0(以tar.xz包安装--编译安装)https://myweb.myskillstree.cn/126.html 目录 一、下载对应自己glic版本的MySQL …

1.基于python的单细胞数据预处理-降维可视化

目录 降维的背景PCAt-sneUMAP检查质量控制中的指标 参考: [1] https://github.com/Starlitnightly/single_cell_tutorial [2] https://github.com/theislab/single-cell-best-practices 降维的背景 虽然特征选择已经减少了维数,但为了可视化&#xff0…

C++语法|智能指针的实现及智能指针的浅拷贝问题、auto_ptr、scoped_ptr、unique_ptr、shared_ptr和weak_ptr详细解读

文章目录 1.自己实现智能指针智能指针引起的浅拷贝问题尝试定义自己的拷贝构造函数解决浅拷贝 2.不带引用计数的智能指针auto_ptrscoped_ptrunique_ptr(推荐) 3.带引用计数的智能指针模拟实现引用计数shared_ptr和weak_ptr循环引用(交叉引用&…

DDD架构理论详解

文章目录 一、概念入门1. 概念简介2. DDD的核心理念3. 范式4. 模型5. 框架6. 方法论7. 软件设计的主要活动 二、DDD核心理论1. Domain领域层都包含什么?2. 聚合、实体和值对象3. 仓储,封装持久化数据4. 适配(端口),调用…

AI应用案例:新闻文本分类

随着科学技术的不断发展,互联网技术得以快速的发展和普及,并已在各行各业得到了广泛的应用,从中致使了网络上的信息呈现出爆炸式的增长状态,达到了“足不出户,万事皆知”的境况,充分体现了互联网新闻给生活…

Java实现自定义注解,实现不需要token 验证就可以访问接口

目录 1 问题2 实现 1 问题 一个springboot 项目,需要token 验证,前端传过来token ,我们一般在项目全局写一个过滤器,去验证前端传过来的token ,如果有哪些接口不需要token验证,那么就排除这些接口,这个也需要配置。 …

前端 | TED打卡号分类查询

文章目录 &#x1f4da;实现效果&#x1f4da;模块实现解析&#x1f407;html&#x1f407;css&#x1f407;javascript &#x1f4da;实现效果 提供完整TED打卡号对应TED标题的查询列表 根据分类按需查询 &#x1f4da;模块实现解析 &#x1f407;html 搭框架<div cl…

Android Studio连接MySQL8.0

【序言】 移动平台这个课程要做一个app的课设&#xff0c;我打算后期增加功能改成毕设&#xff0c;就想要使用MySQL来作为数据库&#xff0c;相对于SQLlite来说&#xff0c;我更熟悉MySQL一点。 【遇到的问题】 一直无法连接上数据库&#xff0c;开始的时候查了很多资料&#…

海外云手机解决海外社交媒体运营难题

随着全球数字化浪潮的推进&#xff0c;海外社交媒体已成为外贸企业拓展市场、提升品牌影响力的重要阵地。Tiktok、Facebook、领英、twitter等平台以其庞大的用户基础和高度互动性&#xff0c;为企业提供了前所未有的营销机会。本文将介绍如何通过海外云手机&#xff0c;高效、快…

eNSP中小型园区网络拓扑搭建(下)

→b站直通车&#xff0c;感谢大佬← →eNSP中小型园区网络拓扑搭建&#xff08;上&#xff09;← 不带配置命令的拓扑图已上传~ 配置ospf SW5 # ospf 1 router-id 5.5.5.5area 0.0.0.0network 192.168.51.5 0.0.0.0network 192.168.52.5 0.0.0.0area 0.0.0.10network 192.1…

elk + filebeat 8.4.3 收集nginx日志(docker部署)

ELK filebeat docker部署 一、 elasticsearch部署1、运行elasticsearch临时配置容器2、拷贝文件目录到本地3、检查elasticsearch.yml4、删除之前elastic&#xff0c;运行正式容器5、docker logs记录启动日志 二、部署kibana1、运行kibana临时配置容器2、docker拷贝配置文件到本…

数据链路层——计算机网络学习笔记三

使用点对点信道的数据链路层 前言&#xff1a; 1.数据链路层的重要性&#xff1a;网络中的主机、路由器都必须实现数据连输层&#xff1b; 2.数据链路层中使用的信道&#xff1a; 点对点信道&#xff1a;这种信道是一对一的通信方式&#xff1b; 广播信道&#xff1a;使用一对多…

硬盘架构原理及其算法RAID工作原理写惩罚

一、硬盘的架构以及寻址原理 硬盘工作原理&#xff1a; 硬盘寻址原理&#xff1a;逻辑顺序磁道、盘片、扇区&#xff08;顺序CHS&#xff09; 二、机械硬盘算法 读取算法 寻道算法 个人与企业适合的算法和寻道 个人使用的机械硬盘适合的寻道算法和读取算法是&#xff1a…

WPS表格:使用vlookup函数解决乱序数据对应问题

我们常常会遇到两个表格的内容相同&#xff0c;但是顺序不一致的情况。并且这种顺序无关于简单的排序&#xff0c;而是一种业务性很强的复杂排序规则。下面我举个例子&#xff0c;使用VLOOKUP复制数据。 假设太阳系行星举办了一次卖萌比赛&#xff0c;由太阳妈妈决定谁是最萌的…

ElasticSearch 8.X 源码导入idea并配置环境启动调试(mac环境)

主要是用于自己记录配置流程 环境 IntelliJ IDEA 2024.1.1 (Community Edition) jdk17&#xff08;可以安装jenv管理&#xff09; macos 14.4.1 gradle 8.5 资源准备 先在官网下载elasticsearch源码&#xff08;GitHub - elastic/elasticsearch: Free and Open, Distrib…

GeoServer安装以及部署

GeoServer介绍 GeoServer是一个开源的服务器软件&#xff0c;用于共享和编辑地理空间数据。它支持多种地理空间数据格式&#xff0c;并且可以发布为多种服务格式&#xff0c;如Web Feature Service (WFS)、Web Map Service (WMS)、Web Coverage Service (WCS)&#xff0c;以及…

SeetaFace6人脸特征提取与对比C++代码实现Demo

SeetaFace6包含人脸识别的基本能力&#xff1a;人脸检测、关键点定位、人脸识别&#xff0c;同时增加了活体检测、质量评估、年龄性别估计&#xff0c;并且顺应实际应用需求&#xff0c;开放口罩检测以及口罩佩戴场景下的人脸识别模型。 官网地址&#xff1a;https://github.co…

pyqt颜色变换动画效果

pyqt颜色变换动画效果 QPropertyAnimation介绍颜色变换效果代码 QPropertyAnimation介绍 QPropertyAnimation 是 PyQt中的一个类&#xff0c;它用于对 Qt 对象的属性进行动画处理。通过使用 QPropertyAnimation&#xff0c;你可以平滑地改变一个对象的属性值&#xff0c;例如窗…

Python-VBA函数之旅-str函数

目录 一、str函数的常见应用场景 二、str函数使用注意事项 三、如何用好str函数&#xff1f; 1、str函数&#xff1a; 1-1、Python&#xff1a; 1-2、VBA&#xff1a; 2、推荐阅读&#xff1a; 个人主页&#xff1a; https://myelsa1024.blog.csdn.net/ 一、str函数的常…