当前位置:首页 > 科技  > 软件

12个程序员必知必备的Git命令

来源: 责编: 时间:2023-10-27 09:15:34 510观看
导读为了使用Git,需要知道基本命令,如git status、git add、git checkout、git push等,本文将为大家介绍几个最常见的的Git命令:1 git status此命令将告诉开发人员有关当前工作目录中已跟踪和未跟踪文件的信息。可以使用此命

为了使用Git,需要知道基本命令,如git status、git add、git checkout、git push等,本文将为大家介绍几个最常见的的Git命令:dU128资讯网——每日最新资讯28at.com

1 git status

此命令将告诉开发人员有关当前工作目录中已跟踪和未跟踪文件的信息。dU128资讯网——每日最新资讯28at.com

可以使用此命令查找已更改并需要提交的文件。dU128资讯网——每日最新资讯28at.com

user@host /c/git/course (master)$ git status# 在分支 master 上没有要提交的内容,工作目录干净

由于这是一个干净的检查,没有任何更改,因此git status说没有要提交的内容,但是现在如果创建一个名为“readme.txt”的文件并再次运行git status,则会看到差异,并且它将高度指出readme.txt是新文件并且未跟踪,带有红色输出。dU128资讯网——每日最新资讯28at.com

$ git status# 在分支 master 上# 未跟踪的文件:# (使用 "git add ..." 将其包含在提交中)## readme.txt没有提交的内容,但存在未跟踪的文件(使用 "git add" 跟踪)

2 git add

此命令将文件添加到暂存区,这意味着现在git已开始跟踪该文件。在调用git commit之前,不会提交该文件,但是git将跟踪任何更改。dU128资讯网——每日最新资讯28at.com

例如,在上一个示例中创建的文件“readme.txt”到目前为止尚未被跟踪。现在使用git add命令来跟踪该文件。dU128资讯网——每日最新资讯28at.com

$ git add readme.txt

现在该文件已添加到暂存区,如果再次运行git status,则会看到不同的输出,还会显示文件名以绿色显示,以指示它已被跟踪但尚未提交。dU128资讯网——每日最新资讯28at.com

$ git status# 在分支 master 上# 要提交的更改:# (使用 “git reset HEAD …” 取消暂存)## 新文件:readme.txt#

3 git branch

此命令用于在Github中创建分支。可以使用此命令创建分支、修改分支和删除分支。dU128资讯网——每日最新资讯28at.com

例如:dU128资讯网——每日最新资讯28at.com

$ git branch F1_BRANCH

将从您所在的主干创建一个新分支。例如,如果您在主分支上,则F1_BRANCH将从HEAD分支创建。dU128资讯网——每日最新资讯28at.com

4 git checkout

可以使用此git命令放弃本地更改并从存储库获取新副本。dU128资讯网——每日最新资讯28at.com

$ git checkout HEAD

将放弃自上次提交以来的所有未暂存更改或自HEAD以来的所有未暂存更改。它最适合仅本地撤消,因为它不会影响团队依赖的远程分支的提交历史记录。dU128资讯网——每日最新资讯28at.com

还可以使用git checkout命令从特定分支下载代码。例如:dU128资讯网——每日最新资讯28at.com

$ git checkout F1_BRANCH

将检出F1_BRANCH中的代码,并更新您的工作目录以匹配。dU128资讯网——每日最新资讯28at.com

5 git log

此命令用于查看所有提交历史记录。还可以使用此命令查看文件的历史记录,如下例所示:dU128资讯网——每日最新资讯28at.com

$ git log -p readme.txt

6 git diff

这是另一个有用的git命令,用于查看本地更改的所有文件。该命令还将显示所有文件中发生了什么更改。dU128资讯网——每日最新资讯28at.com

$ git diff readme.txt

提示:您可以提供文件名以仅显示一个文件的更改。dU128资讯网——每日最新资讯28at.com

7 git blame

这是另一个较少知道的git命令,可用于查找已更改文件的人员,如下所示:dU128资讯网——每日最新资讯28at.com

$ git blame readme.txt

以上命令将显示谁更改了此文件以及添加了什么内容以及何时添加。dU128资讯网——每日最新资讯28at.com

8 git reflog

这是许多程序员忽略的另一个git命令。可以使用此git命令显示本地存储库的HEAD的更改日志。dU128资讯网——每日最新资讯28at.com

$ git reflog

提示:此命令适用于查找丢失的工作。实际上,最后四个git命令都对检查事物有用。dU128资讯网——每日最新资讯28at.com

9 git reset

可以使用此命令放弃任何本地提交。例如:dU128资讯网——每日最新资讯28at.com

$ git reset --hard HEAD

放弃自最近提交以来的所有已暂存和未暂存更改。您可以将HEAD更改为任何提交哈希以放弃自那次提交以来的更改。HEAD只是最近提交的一个好指针。dU128资讯网——每日最新资讯28at.com

另一方面,硬选项表示已丢弃已暂存和未暂存的更改。dU128资讯网——每日最新资讯28at.com

10 git revert

可以使用它来还原远程分支中的提交。与在提交和单个文件级别上工作的git reset和git checkout不同,git revert仅在提交级别上工作。dU128资讯网——每日最新资讯28at.com

$ git revert last_commit

还原或撤消last_commit中更改的影响。值得注意的是,当它将更改还原到存储库时,git revert会生成新提交。dU128资讯网——每日最新资讯28at.com

可以使用这三个git reset、git checkout和git revert命令来撤消对存储库所做的更改,尽管它们之间存在轻微差异。dU128资讯网——每日最新资讯28at.com

提示:如果只是使用自己的本地提交而尚未合并到团队的远程分支(如master)中,则可以使用其中任何一个命令来撤消更改,但如果已合并并且要使提交无效,则只有git revert是要使用的命令。dU128资讯网——每日最新资讯28at.com

11 git clean

可以使用git clean命令删除本地目录中的未跟踪文件。例如,当运行程序时,它可能会在工作目录中创建一些.log文件,可以使用此命令摆脱它们。dU128资讯网——每日最新资讯28at.com

$ git clean -n

可以删除本地工作目录中的未跟踪文件。但是,还应该注意一些有用的标志,例如:dU128资讯网——每日最新资讯28at.com

-n标志用于干运行,不会删除任何内容。dU128资讯网——每日最新资讯28at.com

-f标志实际上删除文件。dU128资讯网——每日最新资讯28at.com

而且,可以使用-d标志删除未跟踪的目录。dU128资讯网——每日最新资讯28at.com

提示:值得注意的是,默认情况下,.gitignore未跟踪的文件不会被删除,但如果需要,可以更改此行为。dU128资讯网——每日最新资讯28at.com

12 git commit

此命令用于提交更改。值得注意的是,在git中提交更改仅在本地工作目录中完成。在使用git push命令之前,更改不会进入远程分支。dU128资讯网——每日最新资讯28at.com

$ git commit -m

允许使用提交消息提交更改。如果要更改消息,则还可以使用dU128资讯网——每日最新资讯28at.com

$ git commit --amend

它允许您编辑最近的提交消息。如果有任何内容,则还可以将已暂存的更改添加到最近的提交中。dU128资讯网——每日最新资讯28at.com

提示:仅在提交未集成到远程主分支中时才使用此命令。dU128资讯网——每日最新资讯28at.com

这里有一个来自RebelLabs的不错的Git备忘单,以记住所有基本Git命令:dU128资讯网——每日最新资讯28at.com

图片图片dU128资讯网——每日最新资讯28at.com

这就是每个Java程序员、开发人员、软件工程师都应该知道的一些最基本的Git命令。希望文章对读者有所帮助。dU128资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-15341-0.html12个程序员必知必备的Git命令

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 大模型分布式并行技术--分布式系统

下一篇: 五个实用的Python编程小技巧

标签:
  • 热门焦点
  • 5月iOS设备好评榜:iPhone 14仅排第43?

    来到新的一月,安兔兔的各个榜单又重新汇总了数据,像安卓阵营的榜单都有着比较大的变动,不过iOS由于设备的更新换代并没有那么快,所以相对来说变化并不大,特别是iOS好评榜,老款设
  • Rust中的高吞吐量流处理

    作者 | Noz编译 | 王瑞平本篇文章主要介绍了Rust中流处理的概念、方法和优化。作者不仅介绍了流处理的基本概念以及Rust中常用的流处理库,还使用这些库实现了一个流处理程序
  • Automa-通过连接块来自动化你的浏览器

    1、前言通过浏览器插件可实现自动化脚本的录制与编写,具有代表性的工具就是:Selenium IDE、Katalon Recorder,对于简单的业务来说可快速实现自动化的上手工作。Selenium IDEKat
  • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了“本地生活”入口,位置较深,位于首页的“充值中心”内,目前主要售卖美食相关的
  • 华为Mate60标准版细节曝光:经典星环相机模组回归

    这段时间以来,关于华为新旗舰的爆料日渐密集。据此前多方爆料,今年华为将开始恢复一年双旗舰战略,除上半年推出的P60系列外,往年下半年的Mate系列也将
  • 超闭合精工铰链 彻底消灭缝隙 三星Galaxy Z Flip5与Galaxy Z Fold5发布

    2023年7月26日,三星电子正式发布了Galaxy Z Flip5与Galaxy Z Fold5。三星新一代折叠屏手机采用超闭合精工铰链,让折叠后的缝隙不再可见。同时,配合处
  • 苹果140W USB-C充电器:采用氮化镓技术

    据10 月 30 日 9to5 Mac 消息报道,当苹果推出新的 MacBook Pro 2021 时,该公司还推出了新的 140W USB-C 充电器,附赠在 MacBook Pro 16 英寸机型的盒子里,也支
  • 微软发布Windows 11新版 引入全新任务栏状态

    近日,微软发布了Windows 11新版,而Build 22563更新主要引入了几周前曝光的平板模式任务栏等,系统更流畅了。更新中,Windows 11加入了专门针对平板优化的任务栏
  • 北京:科技教育体验基地开始登记

      北京“科技馆之城”科技教育体验基地登记和认证工作日前启动。首批北京科技教育体验基地拟于2023年全国科普日期间挂牌,后续还将开展常态化登记。  北京科技教育体验基
Top