Git 分布式文件系统 - 重新认识常见的 git 命令

摘要:重新认识的价值重新认识常使用的 git 命令,就像是走进一个熟习的房间,但是里面的家具被一律重新布置了一次一样。这种焕然一新的感觉和体验,可以够帮助了解后续的《git 内部原理》相关章节产生帮助。无论你是经验老道的资深开发者,还是希望理解 git 的普通爱好者,我都建议你细读本章的内容。Git 命令查看

重新认识的价值

重新认识常使用的 git 命令,就像是走进一个熟习的房间,但是里面的家具被一律重新布置了一次一样。这种焕然一新的感觉和体验,可以够帮助了解后续的《git 内部原理》相关章节产生帮助。无论你是经验老道的资深开发者,还是希望理解 git 的普通爱好者,我都建议你细读本章的内容。

Git 命令

查看已暂存和未暂存的变更

git status 命令允许我们查看当前工作目录的状态,但并不提供查看具体某行改动的功可以。
假如你想要知道当前工作目录相对于本地分支版本,具体哪些信息发生了变化,你能用 git diff 命令。

不增加任何参数的 git diff 命令能列举出尚未增加到暂存区的具体变更。

屏幕快照 2018-07-08 下午10.06.39.png-53kB屏幕快照 2018-07-08 下午10.06.39.png-53kB
相对于暂存区的文件 1.txt,本地工作目录的 1.txt 添加了 hello world 的改动。
假如你想要查看哪些已暂存的内容会进入下一次提交怎样办?答案是用 git diff --staged命令。

编辑 1.txt 命令,新添加 world hello 文本信息到文件中。


image_1cht3phg2t3j1heq1h3qrohdel.png-9.5kBimage_1cht3phg2t3j1heq1h3qrohdel.png-9.5kB

git diff --staged命令,查看本次的修改能否会影响到暂存区?

image_1cht3q66k2343me1cmj135r4fq12.png-13.4kBimage_1cht3q66k2343me1cmj135r4fq12.png-13.4kB

进入下一次提交的信息,仍然只有添加文件之前的变更内容。


image_1cht3qhrrn0p1agpj4216l7u9s1f.png-30.8kBimage_1cht3qhrrn0p1agpj4216l7u9s1f.png-30.8kB

移除文件与移动文件

要从 git 中移除某个文件,你需要先从跟踪文件列表中移除,而后再进行提交操作。
git rm 命令除了帮你完成这些操作以外,还会帮你把文件中工作目录中移除。

git mv命令帮助你对文件进行移动操作。

image_1cht485cdqnemmdtff7td2m81s.png-199.5kBimage_1cht485cdqnemmdtff7td2m81s.png-199.5kB

真棒。但是 git 是如何跟踪到文件的移动或者文件名的更改的呢?实际上,git mv命令等于连续执行以下三个命令。

mv 1.txt 2.txtgit rm 1.txtgit add 2.txt

查看提交历史

当出现线上问题时,可以否第一时间运使用 git log 定位到产生问题的人,并迅速把 这个人给处理掉,不仅是资深开发者的必备技可以之一,更是求生意志的重要表现。

git log -p -2 参数 p 会显示出每次提交引入的差异。-2 参数表示只显示最近的两次提交记录。

image_1cht4qv861vi5166t1aan1vet1tvp2c.png-145.2kBimage_1cht4qv861vi5166t1aan1vet1tvp2c.png-145.2kB
今夜我产生了两次提交。第一次添加了 hello world 字符到文本 1.txt 中,第二次修改了 1.txt 文件的文件筐。像这样的真凭实据,足以让那个产生问题的人闭嘴接锅了。

撤销操作

在 git 中,基本上总有后悔药能吃。假如你对上一次的提交信息不满。git commit -amend命令能帮你在不产生新的提交记录的基础上,修改上一次的提交信息。

image_1cht550ge1931j1hqn41h4i1hkh2p.png-278.4kBimage_1cht550ge1931j1hqn41h4i1hkh2p.png-278.4kB

image_1cht563bv175a55h1esm19151mc036.png-220.9kBimage_1cht563bv175a55h1esm19151mc036.png-220.9kB

注意,相似后悔药这样的药物总是伴随着强烈的反作用。假如你不想在药效过后成为一副被掏空灵魂的躯壳,谨慎用这个命令。

从远程仓库获取和拉取数据

git fetch [remote-name]命令会从远程仓库中获取所有本次仓库没有的数据。该命令并不会将数据合并到本地的工作成功中。当你需要某个最新版本的数据时,你需要手动将这些命令合并到你的本地目录中。换句话说:git fetch从网络上获取最新的快照信息,但并不会检出最新的快照版本合并到本地。这听起来要比 git pull麻烦少量,但是更规范也更安全。

标记与标签

注释标签
git tag命令帮助你对某个提交版本打上标签。

?  gitExperiment git:(master) git tag -a v1.4 -m "my version 1.4"

git show v1.4命令能查看到标签数据以及对应的提交信息。

image_1cht5s27c1e1g1inl1b2v128l6n03j.png-120.8kBimage_1cht5s27c1e1g1inl1b2v128l6n03j.png-120.8kB

轻量标签
git tag v1.4-lw
这样的标签不包含标签信息,只有提交信息以及标签的版本号。

检出标签

标签无法被检出。由于标签无法移动。你能用 ```git checkout -b [branchname] [tagname] 在特定的标签上创立一个新的分支。接着在新的分支上进行作业。

查看已经合并的分支

常见的 git 工作流中,常出现需要删除合并到 master 或者 dev 的分支的环节。git branch --merged 可以够让你查看哪些分支已经并入当前分支。

结语

生活中没有平凡的事物,每一份落日都是一份礼物。坦然接受平凡的馈赠,才可以领悟深刻的人生哲学。重新认识生活,重新开始编程。认真专注于每一个细节和过程,向浮躁的社会和团队说不,你才可以走的更远。

  • 全部评论(0)
最新发布的资讯信息
【系统环境|】2FA验证器 验证码如何登录(2024-04-01 20:18)
【系统环境|】怎么做才能建设好外贸网站?(2023-12-20 10:05)
【系统环境|软件环境】梦幻仙域游戏攻略(2023-12-19 10:02)
【系统环境|软件环境】梦幻仙域游戏攻略(2023-12-19 10:02)
【系统环境|】卡帕部落揭秘潮玩新宠,探究玩法(2023-12-14 09:45)
【系统环境|数据库】 潮玩宇宙游戏道具收集方法(2023-12-12 16:13)
【系统环境|】如何开发搭建卡帕部落模式源码(2023-12-12 10:44)
【系统环境|】遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!(2023-10-12 17:31)
【系统环境|服务器应用】克隆自己的数字人形象需要几步?(2023-09-20 17:13)
【系统环境|】Tiktok登录教程(2023-02-13 14:17)
手机二维码手机访问领取大礼包
返回顶部