前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >10个有用的 Git 命令提示

10个有用的 Git 命令提示

作者头像
开发者技术前线
发布2020-11-23 16:07:48
1.1K0
发布2020-11-23 16:07:48
举报
文章被收录于专栏:开发者技术前线

在过去的几年中,git已非诚成熟,成为最常用的代码版本控制系统之一。它被各种语言和各种规模的团队开发人员使用,从小型的开源项目到像linux内核这样的庞大的代码库。然我们学习git常用的10个命令。

在本文中,我们将与您分享一些可以改善您的git体验和工作流程的技巧。

git log - 不合并

这个git命令显示整个提交历史记录,但是会跳过合并两个分支的提交或解决合并冲突。

这使可以快速查看对项目所做的所有更改,而无需合并提交混乱的git历史记录。

代码语言:javascript
复制
$git log --no-mergescommit e75fe8bf2c5c46dbd9e1bc20d2f8b2ede81f2d93
Author:  John
Date:   Mon Jul 10 18:04:50 2017 +0300   Add new branch.commit 080dfd342ab0dbdf69858e3b01e18584d4eade34
Author:  John
Date:   Mon Jul 11 15:40:56 2017 +0300   Added index.php.commit 2965803c0deeac1f2427ec2f5394493ed4211655
Author:  John
Date:   Mon Jul 13 12:14:50 2017 +0300   Added css files.

git revert - 无提交[提交]

Git还原生成一个新的提交,撤销现有提交所做的更改,并生成一个新的提交结果内容。

如果你想恢复命名的提交,并避免自动提交,你可以使用标志 - 无提交或简写-n。

git diff -w

Git diff

显示两个提交,两个工作树或磁盘上的两个文件之间的变化。

当多个人在同一个项目上工作时,由于文本编辑器的选项卡和空间设置,经常会有变化。

为了在比较行时忽略由空白引起的差异,可以将其与-w标志一起使用。

git diff --stat

显示每个文件如何随时间而改变。

可以添加3个参数:

覆盖默认的输出大小,名称,大小,设置文件名的大小和计数的输出限制为线的第一个号码。

代码语言:javascript
复制
$ git diff --stat
index.php | 83 +++++++++++++++++++++++++++++---------------------------
1 file changed, 43 insertions(+), 40 deletions(-)$ git diff --stat-width=10
index.php | 83 +++---
1 file changed, 43 insertions(+), 40 deletions(-)

git reset --soft HEAD ^

在不改变索引文件和工作树的情况下将头重置为某条记录提交。

在这个提交之后所做的所有更改都将移至“提交阶段”。之后,你只需要运行git commit 添加到本地分支上。

git branch-name[分支名称] [name]

这个命令创建一个名为branch-name的新分支并将其检出,然后将给定的存储中的更改应用到它并删除存储。

如果没有储存,它使用最新的一个。

这使您可以将任何隐藏的更改应用到更安全的环境中,稍后可以将其合并到主环境中。

git branch-a

它显示了所有远程跟踪和本地分支的列表。

你可以使用--merged标志仅查看完全合并到主分支的分支。

这样你可以跟踪你的分支,找出哪些不被使用了,方便可以删除。

代码语言:javascript
复制
$ git branch -a dev
* master
 remotes/origin/HEAD -> origin/master
 remotes/origin/dev

git commit --amend

随着git commit --amend你可以改变你以前的提交,而不是做一个新的。

如果你没有将更改推送到远程分支,则可以使用此命令修改最近的提交,添加最新的更改,甚至更改后提交消息。

git pull --rebase

Git pull --rebase强制git先拉出更改,然后重新绑定最新版本的远程分支上的unpushed提交。

--rebase选项可用于通过防止不必要的合并提交来确保线性历史记录。

git add -p

当你使用这个命令,而不是立即添加所有的变化到索引,它会经历每个变化,并询问你想要做什么。这样,它可以让你交互地选择你想要承诺的东西。

代码语言:javascript
复制
diff --git a/package.json b/package.json
index db78332..a814f7e 100644
--- a/package.json
+++ b/package.json
@@ -6,7 +6,6 @@
  },
  "devDependencies": {
    "bootstrap-sass": "^3.3.7",
-    "gulp": "^3.9.1",
    "jquery": "^3.1.0",
    "laravel-elixir": "^6.0.0-11",
    "laravel-elixir-vue-2": "^0.2.0",
Stage this hunk [y,n,q,a,d,/,e,?]?

原文:https://tutorialzine.com/2017/11/10-useful-git-tips 译者:Tamic

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-12-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开发者技术前线 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • git log - 不合并
  • git revert - 无提交[提交]
  • git diff -w
  • git diff --stat
  • git reset --soft HEAD ^
  • git branch-name[分支名称] [name]
  • git branch-a
  • git commit --amend
  • git pull --rebase
  • git add -p
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档