当前位置: 首页 > news >正文

都2022年了,你还不会在PyCharm中使用Git ?

  • 🐟 个人主页 :https://blog.csdn.net/qq_52007481
  • ⭐个人社区:【小鱼干爱编程】
  • 📰最近专栏:Git教程专栏

文章目录

    • 在Pycharm中准备环境
    • 配置忽略文件(可选)
    • 初始化&添加&提交
      • 初始化
      • 添加暂存区
      • 提交到本地库
      • 新文件
    • 切换版本
      • 查看项目的版本
      • 查看单个文件的版本信息
      • 切换
    • 创建分支和切换分支
      • 创建分支
      • 切换分支
    • 合并分支(无冲突)
    • 合并分支(有冲突)
    • 集成Gitee
      • 添加插件
      • 设置账号
    • 分享项目
    • 设置远程仓库
    • 拉取远程仓库合并本地库
    • 推送代码到远程仓库
    • 克隆远程项目到本地

在JetBrains全家桶中使用 Git,JetBrains全家桶中的操作都类似,这里使用PyCharm进行演示
学会在PyChram中使用Git 也就会在IntelliJ / WebStorm / PhpStorm / RubyMine 这些软件中使用

在Pycharm中准备环境

进入设置(Settings)>版本控制(Version Control)>Git
Git的位置 。。。\Git\bin\git.exe

在这里插入图片描述

选择完文件夹以后测试一下,pycharm能不能找到git,如果成功,页面中会出现Git对应的版本号

在这里插入图片描述

出现版本号之后,在右下角选择 应用 然后点击 确定

配置忽略文件(可选)

一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如.idea、日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件的模式,将这个文件放到你的项目根目录下,这个文件只是针对这个项目,不影响其他的项目

.gitignore以行为单位,一条规则占据一行。每一个规则对应忽略的匹配方式

下面是我配置的.gitignore文件

内容还有很多,只截取了部分
在这里插入图片描述

如果使用的是PyCharm建的项目,.idea中有一个.gitignore ,这个文件夹直接使用Git Bash不能生效 所以将其移动到项目的根目录下

使用下面得网址可以自动生成不同语言的.gitignore文件,不过也是需要修改的,里面有部分内容注释了,可以根据自己的需要进行修改
https://www.toptal.com/developers/gitignore

初始化&添加&提交

无论是在哪里都使用Git的工作流程都是一样的初始化本地仓库>添加到暂存区>提交到仓库

初始化

进入

 VCS > Create Git Repository
 # pycharm版本不同,可能会有些出

然后会弹出一个窗口,默认是当前项目,选择点击确定,然后就会自动初始化本地项目库
对应的命令:git init

下面是对应的流程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

同时你会发现左边文件中有不同的文件颜色,这些颜色有些是和原来Git
的颜色是一样的,还有一些是新的,颜色也会根据主题的不同有所区分,大家以实际为准
红色代表未被追踪
绿色代表已经提交到暂存区还未提交到本地库
白色或者代表已经提交到本地库
灰色或深绿色代表忽略文件
蓝色代表有更改的文件
这些都是我自己实验出来的如果有什么不准确的地方,希望大家指出来

添加暂存区

将整项目提交到暂存区
对应的命令:git add .

在这里插入图片描述

提交到本地库

选中你想要提交的文件,可以是项目也可以是单独的文件夹,鼠标右击 打开 Git > Commit File,
然后会进入到提交的页面,我们可以选择需要提交的文件,提交的版本信息以及其他的操作
对应的命令:git commit -m'xxx'

下面是执行过程
在这里插入图片描述
在这里插入图片描述

在提交项目的时候双击待提交的文件,可以查看每一个文件变化的情况
对应的命令:git diff --cached [file]

在这里插入图片描述

新文件

当新建文件时会出现弹窗,询问你这个文件夹是否需要添加到 暂存区
对应的命令:git add file

在这里插入图片描述

另外需要强调一下,上面的操作不是唯一的,PyChram中有很多方式都可以添加到暂存区,提交到仓库,在操作的过程中只要明白Git的工作流程灵活应对就可以
还有就是,PyCharm 中也可以直接提交到仓库
对应的命令git commit -am'xxx'

切换版本

查看项目的版本

点击左下角的Git > log 就可以看到对应的版本记录
对应的命令:git loggit reflog

在这里插入图片描述

查看单个文件的版本信息

PyCharm中还可以查看单个文件的历史版本,只需要选中该文件,右击 Git > show History,这样我们就可以看到该文件的每个版本的信息了
对应的指令:git log [filename]

在这里插入图片描述

切换

切换版本Git > log 选中需要切换的版本 右击 checkout Revision ..... 然后切换可以
对应的命令:git reset HEAD

HEAD是版本号
在这里插入图片描述在这里插入图片描述

注意:这个菜单里面还有很多操作可以进行,大家自己自行拓展

创建分支和切换分支

创建分支

在PyCharm中创建分支的地方有好多这里就举几个常用的方式
对应的命令: git branch [分支名]

直接在项目中鼠标右击进入Git > new Breach

在这里插入图片描述

在项目的右下角有一个带分支标志的

在这里插入图片描述

在PyCharm最上面的菜单栏中

在这里插入图片描述

新建分支并切换

在这里插入图片描述

切换分支

方式和创建分支类似,都是先展示所有分支,然后自己选择一个分支切换,这里建演示其中一种
对应的命令:git checkout [分支名]git switch [分支名]

在这里插入图片描述

合并分支(无冲突)

没有冲突的条件:两个分支合并的时候不能同时修改一个文件,文件要相对最新
举个例子,我一共有两个文件A、B 我在分支1中修改A,在分支2中修改B这时合并两个分支就不会发生冲突

现在有test.pytest2.py两个文件,两个分支materhot-fix
master分支中修改test.py,在hot-fix分支中修改test2.py
合并前分支的结构,这个分支图可以从Git的log日志中查看到
在这里插入图片描述

合并分支 对应的的指令:git merge [分支名]

在这里插入图片描述

可以选择需要合并的分支

在这里插入图片描述
在这里插入图片描述

合并分支(有冲突)

发生冲突就的条件:就是在两个分支中同时需修改了相同的文件,合并的时候Git不知道你要保留那一部分,所以需要手动的处理冲突。不要指望自动合并,因为没有机器能够知道你的想法是什么,它也不明白你到底会要哪些文件。
举个例子,我一共有两个文件A、B 我在分支1中修改A,在分支2中也修改A ,这个时候在合并的时候就会有冲突,有冲突就需要先解决冲突,自己判断需要的代码

这次我在master分支下修改test.py和在hot-fix分支下修改test.py,
分别提交本地库以后在合并
对应的指令:git merge [分支名]
此时分支图
在这里插入图片描述
在这里插入图片描述

当合并发现冲突时,会有一个弹窗显示,供我们选择冲突解决的方式
一共有四种合并方式

  • 使用自己当前分支
  • 使用别人的分支
  • 根据需求手动合并
  • 直接合并,然后需要在合并后的代码手动合并

在这里插入图片描述

这个页面是手动合并的页面

在这里插入图片描述
在这里插入图片描述

注意,有时候内容一样Git也会有冲突,原因就是你刚开始修改了一部分内容,后来又改回去了,这样也是算修改过内容

集成Gitee

添加插件

先进入File > Settings > Version Control 看看自己有没有Gitee
在这里插入图片描述
如果没有就下载一个gitee的插件,在Plugins中搜索就可以,然后按步骤安装就行
在这里插入图片描述

设置账号

在添加账号的时候会有几种选择方式,根据自己不同的需求选择就行了,这里就演示最简单的一种

在这里插入图片描述

分享项目

分享项目不需要在远程库中创建项目,PyCharm中的Gitee插件会自动创建

在这里插入图片描述

填写完相应的信息就可分享了,不过这些默认的内容都不建议修改

在这里插入图片描述

分享成功

在这里插入图片描述

此时到远程Gitee进行查看

在这里插入图片描述

分享成功以后可以省略绑定远程地址remote,就可以直接使用,进行拉取项目,推送项目

设置远程仓库

添加远程库

如果给新项目设置远程库,也需要远程也是一个新的仓库
对应的命令:git remote add 别名 远程库的链接

在这里插入图片描述

添加远程库以后PyCharm会自动测试项目地址是否可用 我们可以添加多个远程库,这个别名可以根据实际需求变化而变化

在这里插入图片描述

拉取远程仓库合并本地库

对应的指令:git push <远程连接的别名> <分支名>
在这里插入图片描述
在这里插入图片描述

推送代码到远程仓库

对应的指令:git pull 远程连接 分支
在这里插入图片描述
在这里插入图片描述

克隆远程项目到本地

对应的指令:git clone 远程仓库的链接

在这里插入图片描述
在这里插入图片描述


到这里在PyCharm中使用Git的教程就基本结束了,教程中各种操作的方式都不是唯一的,建议大家在下面能够勤加练习,要学会灵活变通,希望大家能够举一反三,软件中操作各种各样,基本原理还是我们以前学的。每个操作我也都指令对应起来了能够帮助大家回忆命令的操作

开发中的小建议:在开发中,向远端推送代码。一般采用的策略都是先拉取远程的项目,拉取以后在本地解决冲突以后在将自己的项目推送到远程。这样基本能够保证远程的项目始终是最最新且没有冲突的内容。
总的来说就是将问题放在本地解决。


  • 🐟 个人主页 :https://blog.csdn.net/qq_52007481
  • ⭐个人社区:【小鱼干爱编程】
  • 📰最近专栏:Git教程专栏

相关文章:

  • 嵌入式操作系统浅谈
  • 算法面经小米篇
  • HTML+CSS大作业 使用html+css实现一个静态的汽车页面(含源码)
  • 软件工程毕业设计 SSM汽车故障报修管理系统(源码+论文)
  • 如何搭建一个vue项目
  • shiro与jwt前后端分离项目集成
  • web3 solidity 基础 ERC20 大白话搞懂
  • 《C++类中的基本常识》
  • JavaEE——File类
  • CANoe-如何模拟CAN总线网关通信(满满都是细节)
  • 请求转发与重定向
  • 如何使用OpenCV的随机森林(Python)
  • matlab神经网络预测数据,Matlab神经网络预测复数
  • 毕业设计 基于单片机的智能蓝牙密码锁设计与实现
  • 【线上实习项目】助力你的校招!
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • CentOS 7 修改主机名
  • create-react-app做的留言板
  • JAVA SE 6 GC调优笔记
  • Javascript基础之Array数组API
  • MobX
  • MySQL QA
  • oschina
  • vuex 笔记整理
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 初识 beanstalkd
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 关于springcloud Gateway中的限流
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 使用SAX解析XML
  • 小程序 setData 学问多
  • 用Python写一份独特的元宵节祝福
  • 第二十章:异步和文件I/O.(二十三)
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • $con= MySQL有关填空题_2015年计算机二级考试《MySQL》提高练习题(10)
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (python)数据结构---字典
  • (力扣)循环队列的实现与详解(C语言)
  • (算法设计与分析)第一章算法概述-习题
  • (一)80c52学习之旅-起始篇
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (一)基于IDEA的JAVA基础10
  • (转)VC++中ondraw在什么时候调用的
  • ***检测工具之RKHunter AIDE
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .NET Core WebAPI中封装Swagger配置
  • [C]编译和预处理详解
  • [CSS]中子元素在父元素中居中
  • [dfs搜索寻找矩阵中最长递减序列]魔法森林的秘密路径
  • [docker] Docker的数据卷、数据卷容器,容器互联
  • [English]英语积累本
  • [GYCTF2020]Ez_Express
  • [HDU5685]Problem A