Pycharm中Git的使用

基础知识

Git版本控制的功能为保存不同版本的代码,保存代码的地方叫做仓库。

每个仓库中有多个分支,每个分支上又有很多节点,每个节点代表一个版本,不同的分支可以进行合并,实现多个功能的同时开发。

一个完整的Git版本控制系统有两个仓库,一个仓库在服务器上,另一个仓库在本地。服务器仓库主要作用为团队协作和多端同步,可以将本地的仓库的某个分支上传至服务器某个分支;本地仓库的作用主要是提交自己的代码至本地仓库某个分支和下载服务器仓库的某个分支。

平时编写代码的某个版本必然是仓库的某个分支的某个节点,该处称为工作空间。

分支的本质为标签,分支的标签只能在分支的头部,可以想象,分支是一条公交车路线,节点是分支的站点,而路线的名称则放在路线头部。head标签可以任意移动,代表的使当前工作空间的节点。

Pycharm中文件颜色和Git的关系

棕色为未加入本地仓库的文件

绿色为已添加但从未提交过的文件

蓝色为提交过但未提交最新修改的文件

黑色为和当前节点相同的文件

Pycharm中Git命令的功能

(1) commit

提交更新的文件至本地当前工作空间所在的分支。在head分支下无法commit。

当head标签与分支标签在同一处是,则可以进行commit。

(2) add

将某个文件加入工作空间,在下次commit时,会将该文件提交进本地分支。

(3) annotate

显示注释,注释内容为提交者。

(4) show current revision

弹出气泡提示当前文件的版本、提交者、提交时间。

(5) compare with the same repository version

工作空间内的代码和当前分支的当前节点对比

(6) compare with

工作空间内的代码和当前分支之前的节点对比

(7) compare with branch

工作空间内的代码和其他分支最新节点对比

(8) show history

显示当前分支的该节点及之前的节点内容

(9) rollback

翻译为回滚。把工作空间未提交的修改删除并将状态返回至当前节点。

(10) checkout

右键节点使会出现该选项,选择不同的分支,可以跳转到其他分支的该节点,如果此时工作空间相对于当前节点有改变,且未提交,则会出现提示,可以舍弃改变或者放弃checkout。

(11) reset current branch to here

重置当前分支到该节点。

如果当前节点不是该分支的最新节点,则该操作与checkout相同。

如果当前节点为该分支的最新节点,且该节点与当前节点为同一分支,则该节点后的节点会删除。如果该节点与当前节点为不同分支,则其在当前分支之后的节点会删除,且当前分支延伸到该节点。

如果选的hard模式,则会舍弃工作空间的修改。

(12) revert commit

工作空间的状态回到当前分支的上个节点,并弹出commit窗口。

(13) undo commit

为选择当前分支上一个节点的reset current branch to here操作。

(14) new branch

在当前节点位置创建分支

(15) merge changes

当前分支合并另一个分支,合并后的分支名为当前分支。合并过程中有冲突的地方需要进行手工进行合并。

在无分支的地方进行合并其他分支的操作,会产生分支的路线。

(16) pull

将当前分支合并某个服务器仓库的某个分支。

(17) push

将当前分支提交至服务器仓库,如果存在冲突则会提示冲突,需要解决冲突。

(18) stash changes

如果本地有文件改动未提交、且该文件和服务器最新版本有冲突,pull更新会提示错误,无法更新:要么先commit自己的改动然后再通过pull拉取代码,stash的好处是可以先将你的改动暂存到本地仓库中,随时可以取出来再用,但是不用担心下次push到服务器时,把不想提交的改动也push到服务器上,因为stash changes的内容不参与commit和push。

将当前节点未提交改动保存到另一处空间,不参与commit,实现保存非新版本。

(19) unstash changes

与stash changes的功能相反,取出暂存的代码改动到当前节点。

(20) reset HEAD

重置当前工作空间为HEAD节点版本。

(21) remotes

设置服务器仓库的地址

(22) clone

从服务器仓库地址克隆仓库

(23) rebase

以后补充

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,841评论 5 472
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,415评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,904评论 0 333
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,051评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,055评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,255评论 1 278
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,729评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,377评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,517评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,420评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,467评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,144评论 3 317
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,735评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,812评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,029评论 1 256
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,528评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,126评论 2 341

推荐阅读更多精彩内容

  • issue管理模式[https://git.nrs-lab.com/hitsz-nrsl/standard-wor...
    ou源仔阅读 2,364评论 0 1
  • 朋友整理的,放这里偶尔过来看看 一、基本介绍 首先,Git作为版本控制系统,他的原理与SVN为首的集中式版本控制系...
    allenzhan阅读 972评论 0 3
  • 这篇博文是自己在学习git过程中的思考总结。本文仅仅代表个人的看法,如有不妥地方还请本文文末留言。 😊 原文链接g...
    Ming_Hu阅读 1,043评论 4 18
  • 昨天在同事电脑上操作了一把cherry-pick代码,发现很多功能不用,就慢慢忘记了,梳理了下流程图: git c...
    gogoingmonkey阅读 660评论 0 0
  • 这篇就算在这一周的学习笔记里吧😆 从进入红岩交的第二份作业开始就是使用的Github来上交的,但是一直一直以来,我...
    Override0330阅读 844评论 0 0