电脑频道 手机频道
网络技能 路由器
电脑零碎 电脑蓝屏
游戏攻略 明星八卦
钱汇娱乐网 最新更新
首页 > 苹果MAC>注释 通告: 为呼应国度净网举动,局部内容曾经删除,感激网友了解。

_Git上一些修正错误操纵的下令运用本领_

【2015-12-17 08:25:53】 泉源:网络 作者:福州电脑之家 批评:

修正错误的提交信息commit message
提交信息很永劫间内会不断保存在你的代码库code base中,以是你一定盼望经过这个信息准确地理解代码修正状况。 上面这个下令可以让你编辑近来一次的提交信息,但是你必需确保没有对以后的代码库working copy做修正,不然这些修正也会随之一同提交。
[/code]
$ git commit --amend -m ”YOUR-NEW-COMMIT-MESSAGE”
[/code]
假设你曾经将代码提交(git commit)推送(git push)到了近程分支,那么你需求经过上面的下令强迫推送这次的代码提交。

复制代码代码如下:
$ git push <remote> <branch> --force

从以后Git分支移除未追踪的当地文件
假定你恰巧有一些未被追踪的文件(由于不再需求它们),不想每次运用git status下令时让它们表现出来。上面是处理这个题目的一些办法:

复制代码代码如下:
$ git clean -f -n # 1
$ git clean -f # 2
$ git clean -fd # 3
$ git clean -fX # 4
$ git clean -fx # 5

(1): 选项-n将表现实行(2)时将会移除哪些文件。
(2): 该下令会移除一切下令(1)中表现的文件。
(3): 假如你还想移除文件件,请运用选项-d。
(4): 假如你只想移除已被疏忽的文件,请运用选项-X。
(5): 假如你想移除已被疏忽和未被疏忽的文件,请运用选项-x。
请留意最初两个下令中X的区别。

修复更晚期的 commit

场景: 你在一个更晚期的 commit 里遗忘了参加一个文件,假如更早的 commit 能包括这个遗忘的文件就太棒了。你还没有 push,但这个 commit 不是近来的,以是你没法用 commit --amend.

办法:
复制代码代码如下:git commit --squash <SHA of the earlier commit>和
复制代码代码如下: git rebase --autosquash -i <even earlier SHA>

原理:
复制代码代码如下:git commit --squash会创立一个新的 commit ,它带有一个 commit 音讯,相似于 squash! Earlier commit。 (你也可以手工创立一个带有相似 commit 音讯的 commit,但是 commit --squash 可以帮你省下输出的任务。)

假如你不想被提示为新兼并的 commit 输出一条新的 commit 音讯,你也可以应用 git commit --fixup 。在这个状况下,你很能够会用commit --fixup ,由于你只是盼望在 rebase 的时分运用晚期 commit 的 commit 音讯。


复制代码代码如下:rebase --autosquash -i  会激活一个交互式的 rebase 编辑器,但是编辑器翻开的时分,在 commit 清单里任何 squash! 和 fixup! 的 commit 都曾经配对到目的 commit 上了,如下所示:
2015127115740190.png (1446×294)

在运用 --squash 和 --fixup 的时分,你能够不记得想要修正的 commit 的 SHA 了— 只记得它是后面第 1 个或第 5 个 commit。你会发明 Git 的 ^ 和 ~ 操纵符特殊好用。HEAD^ 是 HEAD 的前一个 commit。 HEAD~4 是 HEAD 往前第 4 个 – 或许一同算,倒数第 5 个 commit。

 

中止追踪一个文件

场景: 你偶尔把 application.log 加到代码库里了,如今每次你运转使用,Git 都市陈诉在 application.log 里有未提交的修正。你把 *.login 放到了 .gitignore 文件里,可文件照旧在代码库里 — 你怎样才干通知 Git “打消” 对这个文件的追踪呢?

办法:
复制代码代码如下:git rm --cached application.log

原理: 固然 .gitignore 会制止 Git 追踪文件的修正,乃至不存眷文件能否存在,但这只是针对那些曩昔历来没有追踪过的文件。一旦有个文件被参加并提交了,Git 就会继续存眷该文件的改动。相似地,假如你应用 git add -f 来强迫或掩盖了 .gitignore, Git 还会继续追踪改动的状况。之后你就不用用-f  来添加这个文件了。

假如你盼望从 Git 的追踪工具中删除谁人本应疏忽的文件, git rm --cached 会从追踪工具中删除它,但让文件在磁盘上坚持原封不动。由于如今它曾经被疏忽了,你在  git status 里就不会再瞥见这个文件,也不会再偶尔提交该文件的修正了。


删除当地和近程Git分支
删除当地分支:

复制代码代码如下:
$ git branch --delete --force <branchName>

或许运用选项-D作为简写:

复制代码代码如下:
$ git branch -D

删除近程分支:

复制代码代码如下:
$ git push origin --delete <branchName>

700x439

700x439-252K-PNG

Mac终端git下令提示错误:missing xcrun_电脑教...

相干搜刮:

分享:
下载
宣布关于《_Git上一些修正错误操纵的下令运用本领_》的批评

福州电脑网(福州iThome)专业电脑/盘算机学习网站.提供电脑维修知识,包罗盘算机软件/硬件维修知识,路由器/交流机/网络设置,电脑蓝屏,网络/it知识学习等等钱汇网址学习材料.

免责声明:本站一切信息内容仅供参考,若有得罪您的权柄请联络我们删除!请各人留意:本站删帖完全收费。邮箱:

Copyright (C) FziThome.com, All Rights Reserved.

版权一切 闽ICP备14002611号-3