git学习(3)--文件添加与版本修改

添加文件管理(三步走):

创建文件可以使用touch的命令,例如创建一个python文件或者一个txt文件:

touch 1.py

touch 1.txt

但是需要注意的是在git里,创建的新文件并没有被真正添加到库里面,可使用git status查看所在文件夹的状态,发现此时的文件状态是untracked的状态。

下一步如果使用 

git add 1.py

如果批量缓存可以使用命令: git add .(都记得有空格)

再使用git status查看所在文件夹的状态,发现此时的文件状态是 changes to be committed, 所以现在是一个staged(缓存区)的状态。

$ git status-s# "-s": status 的缩写模式,可以显示缩略状态。

最后,使用命令提交改变,即 commit。

git commit -m"xxx", 在引号中自定义本次改变的信息。

状态变化可以用以下图表显示:

版本修改的日志 log

对版本库中的文件进行修改,可以使用如下命令查看修改过程:

$ git log

使用简洁版查看当前状态:

$ git log --oneline

(此时所显示的每一行有三个参数,第一个参数代表了这个版本的象征,第二个参数代表了当前指针所在位置,如果有这个参数就表明当前版本是这个版本,如果没有就表明不是。第三个参数代表了你每一次更改给这个新版本进行的命名。)

这会输出作者,时间和修改内容。如果对文件进行修改后,再使用status查看状态,可以看到文件的状态:

modified: 1.py (此时是修改后未缓存的状态)

手动 add 后 再 commit, 再查询 git log 可以查看修改的具体细节。

版本对比的三种方法

对待不同状态的文件类型,需要使用不同的command进行比对。

1.刚刚修改未缓存的文件(unstaged) & 上个提交的文件(commited):

$ git diff

2.缓存的文件(staged) &  上个提交的文件(commited):

$ git diff --cached

3.缓存的文件(staged) & 刚刚修改未缓存的文件(unstaged)

$ git diff head


2019-1-2

一个版本库中不同版本间的切换

1.对已经commit的版本进行修改并且不重新命名新的版本。

copy paste 一个新的py副本,对这个副本进行修改;然后再重新add到缓存里;然后再进行commit,但是与之前有所不同,命令如下:

$ git commit --amend --no-edit (少个空格都不能对!)

2.对已经add的版本进行修改返回到add之前(unstaged的状态)

在已经commit的版本上进行修改后,再使用add的命令即可使unstaged(modified)的状态变为staged。

而staged的状态变为modified(unstaged)的状态,再使用以下命令即可;

$ git reset 1.py

3.对已经commit的版本返回之前commit了的版本

查看每个版本对应的id,可以使用如下命令;

$ git log --oneline 

然后知道每个版本对应的id之后,就可以使用四种不同的方法返回想要的版本了:

# 方式1:"HEAD^"(^是返回上一个commit的意思)

$ git reset--hard HEAD^

# 方式2:"commit id"

$ git reset--hard c6762a1

#方式3:"HEAD~n"(~n是返回前几个版本的commit的意思,不包括创建的那一个版!!!)

$ git reset--hard HEAD~1

#方式4:"HEAD@{n}"(直接通过查看reflog里面的指针返回)

$ git reset--hard HEAD@{1}

状态变化解释,根据官网的图片:

而返回了之前的版本,还想查看之后的版本就要使用如下命令:(reference log)

$ git reflog --oneline

一个版本库中某一个文件的不同版本的修改

比如版本库中有两个文件1.py和2.py,那么只对1.py进行修改,就需要使用与上述方法不同的命令,就是checkout

$ git checkout xxxxx(版本id)--1.py(文件名字)

然后这个文件就回到了当是xxxx版本的内容,在此基础上进行修改后,再add并commit(记得加上remark),可以发现修改的新版本就跟在之前许多版本的后面,而没有覆盖之前的未来。

教学视频:

git 版本管理tutorial 

首先就遇到了难题,按照视频里的走,我根本无法打开想要打开的目录,于是各种搜索,搜索到了查看当前目录,更改目录的command,真的是算超级小白了,不过我相信后面会快起来的。



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

推荐阅读更多精彩内容