Git 的命令实在是太多了,有的小伙伴就说了,我可以用客户端(Source Tree、Gitkraken、tortoiseGit)它们不香吗? 通常情况下,一些简单操作是香的。...而且命令行的错误提示是非常详细的,你可以准确锁定你错误的原因以及正确的使用方法,孰能自然生巧。 其次,程序员使用命令行是一件多么酷的事情啊,在黑框框里操作的时候难道没有一种黑客既视感吗?...将仓库内所有变更都加入到暂存区 git add -A 将指定文件添加到暂存区 git add 文件1 文件2 文件3 比较工作区和暂存区的所有差异 git diff 比较某文件工作区和暂存区的差异...git diff 文件 比较暂存区和 HEAD 的所有差异 git diff --cached 比较某文件暂存区和 HEAD 的差异 git diff --cached 文件 比较某文件工作区和...HEAD 的差异 git diff HEAD 文件 创建 commit git commit 将工作区指定文件恢复成和暂存区一致 git checkout 文件1 文件2 文件3 将暂存区指定文件恢复成和
wc程序统计一个文件的行(包含空白行)、单词和字符(包含制表符、换行符等空白字符)。...使用diff来比较x和xx的区别: $ diff x xx 1d0 < aa 2a2 > a a 如上所述,diff命令会给出将第一个文件修改成第二个文件的方法,在这个例子中第一个文件是x,第二个文件是...最后,-i选项表示不区分大小写,-w选项表示忽略空格和制表符,-b选项只在意是否有空白符,而不在意空白符的数量。...对于diff -w命令,x和xx两个文件是没有区别的,因为忽略了空白符(这里是空格): $ diff -w -u x xx $ 对于diff -b命令,x和xx两个文件第一行有区别,因为一个没有空格,而一个有空格...;第二行没有区别,因为都有空格,-b选项忽略了空格的数量: $ diff -b x xx 1c1 < aa --- > a a
忽略因空白符数量不同造成的差异 -C NUM -c, --context[=NUM] 使用上下文格式输出,显示异行处上下指定数量的行(默认为 3 行) --color[=WHEN]...若使用 -N 参数,则 diff 会将文件 A 与一个空白的文件比较 -n, --rcs 将比较结果以 RCS 的格式来显示 --no-dereference 不解析 --no-ignore-file-name-case...缺省为 130 -w, --ignore-all-space 在比较行的时候忽略空白符 -y, --side-by-side 使用并格式输出两列 -Z, --ignore-trailing-space...忽略行尾的空白符 4.常用示例 给定测试文件 file1 和 file2,其内容为十二生肖中动物的英文。...(5)比较时忽略空白字符(Tab、空格),使用正常格式输出。
来匹配所有 .txt 结尾的文件;第二行规则使用了反斜线 / 来指定需要忽略的目录 build,并在末尾加上了斜线 / 来表示忽略该目录下的所有内容;第三行规则指定了需要忽略的文件名 example.log...6.2、git diff的使用 git diff 是一个常用的 Git 命令,用于比较 Git 仓库中的不同版本之间的差异。...下面是 git diff 命令的一些常见用法: 比较工作目录中的文件与最新提交之间的差异: git diff 比较工作目录中的文件与暂存区之间的差异: git diff --cached 比较两个提交之间的差异...下面是一些常用的Git GUI工具: GitKraken:这是一款跨平台的Git GUI工具,支持Windows、Mac和Linux系统。...它提供了一套直观的图形界面,可以帮助用户更方便地管理Git仓库。GitKraken还支持一些高级功能,如分支管理、代码审核等。
clover 官方网址:http://cn.ejie.me/ 方便的 Tab 页功能 要掌握功能强大,操作简单的标签页,只需记住Ctrl+T新开页面,Ctrl+W关闭页面,Ctrl+Tab切换页面,工作效率提高何止一倍...操作系统无缝集成 Clover 通过插件的形式集成到 Windows Explorer,保留您通常的使用习惯,无需学习新的文件管理操作,马上就可以使用啦。...快如闪电的书签栏 按Ctrl+D添加当前路径,或者直接将文件夹拖入书签栏。再也不用到处寻找要访问的文件夹了,瞬间到达,何等痛快! ?...Zeal 官方地址:https://zealdocs.org/ 离线API文档工具,在zeal中可以快速的查找一些语言的函数和模块名称,像图中这样子的,具体的使用可以参考官网的说明,目前主流的框架和语言都有支持...GitKraken 官方地址:https://www.gitkraken.com/ 比较好用的git可视化工具,一键取消,比较好的合并工具,支持git子项目。 ?
本文作者:IMWeb 黄龙 原文出处:IMWeb社区 未经同意,禁止转载 clover 官方网址:http://cn.ejie.me/ 方便的 Tab 页功能 要掌握功能强大,操作简单的标签页...操作系统无缝集成 Clover 通过插件的形式集成到 Windows Explorer,保留您通常的使用习惯,无需学习新的文件管理操作,马上就可以使用啦。...快如闪电的书签栏 按Ctrl+D添加当前路径,或者直接将文件夹拖入书签栏。再也不用到处寻找要访问的文件夹了,瞬间到达,何等痛快! ?...Zeal 官方地址:https://zealdocs.org/ 离线API文档工具,在zeal中可以快速的查找一些语言的函数和模块名称,像图中这样子的,具体的使用可以参考官网的说明,目前主流的框架和语言都有支持...GitKraken 官方地址:https://www.gitkraken.com/ 比较好用的git可视化工具,一键取消,比较好的合并工具,支持git子项目。 ?
我们都知道,目前市面上可用的 Git 客户端种类繁多,常见的有 Gitkraken、Source Tree、tortoiseGit、SmartGit 等工具。...但是,今天要跟大家推荐的这款,大部分人肯定都是第一次见。因为这个项目是前不久才在 GitHub 上开源的......相信接触 Git 时间比较长的开发者,应该都听过或玩过一款基于 Qt 与 C++ 开发的 Git 图形浏览器:QGit。 早期这款工具刚刚诞生的时候,由于其简洁直观的界面,得到了不少开发者喜爱。...不同窗口的代码对比: ? GitQlient 当前的最新版本,是 1.1.0。...代码提交(附加) 可暂存(stage)一行或一块代码 squash 提交 代码对比 可查看单个文件的代码对比(diff) 查阅单个文件的 diff(所有提交信息) UI:更为丰富的样式表 更多平台支持:
选项 ignoreCase : true忽略大小写差异。默认为false 。...]) 区分两个文本块,逐字比较,忽略空格。...(oldStr, newStr[, options]) 区分两个文本块,逐字比较,将空白视为有效。...选项 ignoreWhitespace : true忽略前导和尾随空白。...(oldStr, newStr[, options]) 区分两个文本块,逐行比较,忽略前导和尾随空格。
diff命令 diff命令能够比较给定的两个文件的不同,如果使用-代替文件参数,则要比较的内容将来自标准输入,diff命令是以逐行的方式比较文本文件的异同处,如果该命令指定进行目录的比较,则将会比较该目录中具有相同文件名的文件...-b或--ignore-space-change: 不检查空格字符的不同。 -B或--ignore-blank-lines: 不检查空白行。 -c: 显示全部内容,并标出不同之处。...-N或--new-file: 在比较目录时,若文件A仅出现在某个目录中,预设会显示Only in ,文件A若使用-N参数,则diff会将文件A与一个空白的文件比较。...-P或--unidirectional-new-file: 与-N类似,但只有当第二个目录包含了第一个目录所没有的文件时,才会将这个文件与空白的文件做比较。...-w或--ignore-all-space: 忽略全部的空格字符。 -W 或--width : 在使用-y参数时,指定栏宽。
请牢记这会将清除工作目录中的所有内容,所以确保你不需要保存这里的任意改动。 忽略空白 在这个特定的例子中,冲突与空白有关。...默认合并策略可以带有参数,其中的几个正好是关于忽略空白改动的。...第一个选项忽略任意 数量 的已有空白的修改,第二个选项忽略所有空白修改。...hello.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 因为在本例中,实际上文件修改并没有冲突,一旦我们忽略空白修改,每一行都能被很好地合并...实际上,这比使用 ignore-space-change 选项要更好,因为在合并前真正地修复了空白修改而不是简单地忽略它们。
忽略空白 在这个特定的例子中,冲突与空白有关。 我们知道这点是因为这个例子很简单,但是在实际的例子中发现这样的冲突也很容易, 因为每一行都被移除而在另一边每一行又被加回来了。...默认合并策略可以带有参数,其中的几个正好是关于忽略空白改动的。...第一个选项在比较行时 完全忽略 空白修改,第二个选项将一个空白符与多个连续的空白字符视作等价的。...hello.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 因为在本例中,实际上文件修改并没有冲突,一旦我们忽略空白修改,每一行都能被很好地合并...实际上,这比使用 ignore-space-change 选项要更好,因为在合并前真正地修复了空白修改而不是简单地忽略它们。
diff 概述 diff命令在最简单的情况下,比较给定的两个文件的不同。 如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。 diff命令是以逐行的方式,比较文本文件的异同处。...-N参数,则diff会将文件A 与一个空白的文件比较; -p:若比较的文件为C语言的程序码文件时,显示差异所在的函数名称; -P或–unidirectional-new-file:与-N类似,但只有当第二个目录包含了第一个目录所没有的文件时...,才会将这个文件与空白的文件做比较; -q或–brief:仅显示有无差异,不显示详细的信息; -r或——recursive:比较子目录中的文件; -s或–report-identical-files...-w或–ignore-all-space:忽略全部的空格字符; -W或–width:在使用-y参数时,指定栏宽; -x或–exclude:不比较选项中所指定的文件或目录...此选项必须和选项“-AeExX3”连用,但是不能和“-m”连用; –initial-tab:在正常格式的行的文本前,输出一个TAB字符而非两个空白字符。
编写playbook要清楚某些配置文件做了哪些改动,使用diff命令,让类似文件比较的工作更加高效。...参数说明 参 数 功 能 - 指定要显示多少行的文本,该参数必须与参数-c或-u一起使用 -a 将所有的文件均作为文本文件进行处理 -b 不检查文件中的空格字符 -B 不检查文件的空白行 -...若比较文件1时,使用了该参数,则diff指令将文件1与一个空白文件进行比较 -p 如果比较的文件为C语言代码文件,则将显示差异所在的函数名称 -P 与参数-N功能相似。...但只有当目录2中包含了目录1所没有的文件时,才会将这个文件与空白的文件进行比较 -q 仅仅显示有无差异,并不显示详细的信息 -r 比较子目录中的文件 -s 如果没有发现任何差异,将仍然显示相关的信息 -...-w 忽略全部的空格字符 -W 在使用参数“-y”时,指定栏宽 -x 不比较选项中所指定的文件或目录 -X 可以将文件或目录类型保存为文本文件 -y 以并列的方式显示文件的异同
diff 比较给定的两个文件的不同 补充说明 diff命令在最简单的情况下,用于比较给定的两个文件的不同。如果使用 “-” 代替 “文件” 参数,则要比较的内容将来自标准输入。...--b 或 --ignore-space-change:不检查空格字符的不同。 --B 或 --ignore-blank-lines:不检查空白行。 --c:显示全部内容,并标出不同之处。...若使用 -N 参数,则 diff 会将文件 A 与一个空白的文件比较。 --p:若比较的文件为 C 语言的程序码文件时,显示差异所在的函数名称。...--P 或 --unidirectional-new-file:与 -N 类似,但只有当第二个目录包含了第一个目录所没有的文件时,才会将这个文件与空白的文件做比较。...--w 或 --ignore-all-space:忽略全部的空格字符。 --W 或 --width:在使用 -y 参数时,指定栏宽。
sort uniq -c sort 让网站访问某主机网页1000次 ab -c 1000 -n 10000 http://192.168.25.128/index.html 11、rev 12、diff...(判断两个文件的不同) diff a.bak b.bak -u : 显示详细信息 diff a.bak b.bak -u > diff.log -b : 选项来自备份该表了的文件 patch -b acl.bak...diff.log (还原文件) 13、grep(行提取工具) -v 显示不被匹配的行 -i 忽略大小写 -n 显示匹配行号 -c 统计匹配的行数 -o 仅显示匹配到的字符串 -q 静默模式,不输出任何信息...[:alnum:] 字母和数字 [:alpha:] 代表任何英文大小写字符,a-z A-Z [:lower:] 小写字母 [:upper:] 大写字母 [:space:] 水平和垂直的空白字符 [:blank...:] 空白字符 [:cntrl:] 不可打印的控制字符(退格、删除、警铃) [:digit:] 十进制数字 [:xdigit:] [:graph:] 可打印的非空白字符 [:print:] 可打印的非空白字符
本文所介绍的文本比对办法,无需任何软件,只需一个Linux命令。学会这个命令,妈妈就再也不怕你不会文本比对了。 这个Linux命令就是diff命令。 diff是Unix系统的一个很重要的工具程序。...我们暂且不管那么多,先学一些最常用的,毕竟时间要花在刀刃上。 -b ――? 忽略一行中的空字符的区别(例如“Hello World!” 与 “Hello??????? World!!”...认为是一样的) -B ―― 忽略空白行 -i ―― 忽略大小写的不同 -r ―― 如果diff后面接的目录时,会递归比较子目录中的文件不同 我们再来具体看看怎么进行文本比较。...diff命令的输出格式有三种: (1)正常格式(normal diff) (2)上下文格式(context diff) (3)合并格式(unified diff) 我们通过实例详细介绍这三种输出格式。...后面几行的含义类似。 (3)合并格式 这种格式是正常格式与上下文格式的综合版,同时这种格式也是git diff所采用的格式。使用这种格式的命令是: diff -u a.c b.c ?
不过有些时候,你想要在你所有的版本库中忽略掉某一类文件。 如果你的操作系统是 OS X,很可能就是指 .DS_Store。...,则忽略着色功能。...你也可以设置成 always,来忽略掉管道和终端的不同,即在任何情况下着色输出。...格式化与多余的空白字符 格式化与多余的空白字符是许多开发人员在协作时,特别是在跨平台情况下,不时会遇到的令人头疼的琐碎的问题。...,告诉 Git 忽略行尾的回车。
预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 (?!...预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 (?...当该标志被指定时,在 RE 字符串中的空白符被忽略,除非该空白符在字符类中或在反斜杠之后;这可以让你更清晰地组织和缩进 RE。...它也可以允许你将注释写入 RE,这些注释会被引擎忽略;注释用 "#"号 来标识,不过该符号不能在字符串或反斜杠之后。 16 (?...() diff=d.compare(alist,blist) print('\n'.join(diff)) 19、unified_diff image.png 20、difflib.SequenceMatcher
ignore-space-at-eol 忽略 EOL 中的空白更改。 ignore-space-change 忽略空格量的变化。...-b --ignore-space-change 忽略空格量的变化。这会忽略行尾的空格,并将一个或多个空白字符的所有其他序列视为等效。...ignore-space-at-eol 忽略 EOL 中的空白更改。 ignore-space-change 忽略空格量的变化。...-b --ignore-space-change 忽略空格量的变化。这会忽略行尾的空格,并将一个或多个空白字符的所有其他序列视为等效。...与空行的其他更改混合的空白更改不会被忽略。另见 git-diff [1] -b,-w,--ignore-space-at-eol和--ignore-cr-at-eol。
本文所介绍的文本比对方法,无需任何软件,只需一个Linux命令。学会这个命令,妈妈就再也不怕你不会文本比对了。 这个Linux命令就是diff命令。 diff是Unix系统的一个很重要的工具程序。...我们暂且不管那么多,先学一些最常用的,毕竟时间要花在刀刃上。 -b —— 忽略一行中的空字符的区别(例如“Hello World!” 与 “Hello World!!”...认为是一样的) -B —— 忽略空白行 -i —— 忽略大小写的不同 -r —— 如果diff后面接的目录时,会递归比较子目录中的文件不同 我们再来具体看看如何进行文本比较。...diff命令的输出格式有三种: (1)正常格式(normal diff) (2)上下文格式(context diff) (3)合并格式(unified diff) 我们通过实例详细介绍这三种输出格式。...后面几行的含义类似。 (3)合并格式 这种格式是正常格式与上下文格式的综合版,同时这种格式也是git diff所采用的格式。使用这种格式的命令是: diff -u a.c b.c ?
领取专属 10元无门槛券
手把手带您无忧上云