在过去的几年中,git已非诚成熟,成为最常用的代码版本控制系统之一。它被各种语言和各种规模的团队开发人员使用,从小型的开源项目到像linux内核这样的庞大的代码库。然我们学习git常用的10个命令。
在本文中,我们将与您分享一些可以改善您的git体验和工作流程的技巧。
这个git命令显示整个提交历史记录,但是会跳过合并两个分支的提交或解决合并冲突。
这使可以快速查看对项目所做的所有更改,而无需合并提交混乱的git历史记录。
$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还原生成一个新的提交,撤销现有提交所做的更改,并生成一个新的提交结果内容。
如果你想恢复命名的提交,并避免自动提交,你可以使用标志 - 无提交或简写-n。
Git diff
显示两个提交,两个工作树或磁盘上的两个文件之间的变化。
当多个人在同一个项目上工作时,由于文本编辑器的选项卡和空间设置,经常会有变化。
为了在比较行时忽略由空白引起的差异,可以将其与-w标志一起使用。
显示每个文件如何随时间而改变。
可以添加3个参数:
覆盖默认的输出大小,名称,大小,设置文件名的大小和计数的输出限制为线的第一个号码。
$ 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 commit 添加到本地分支上。
这个命令创建一个名为branch-name的新分支并将其检出,然后将给定的存储中的更改应用到它并删除存储。
如果没有储存,它使用最新的一个。
这使您可以将任何隐藏的更改应用到更安全的环境中,稍后可以将其合并到主环境中。
它显示了所有远程跟踪和本地分支的列表。
你可以使用--merged标志仅查看完全合并到主分支的分支。
这样你可以跟踪你的分支,找出哪些不被使用了,方便可以删除。
$ git branch -a dev
* master
remotes/origin/HEAD -> origin/master
remotes/origin/dev
随着git commit --amend你可以改变你以前的提交,而不是做一个新的。
如果你没有将更改推送到远程分支,则可以使用此命令修改最近的提交,添加最新的更改,甚至更改后提交消息。
Git pull --rebase强制git先拉出更改,然后重新绑定最新版本的远程分支上的unpushed提交。
--rebase选项可用于通过防止不必要的合并提交来确保线性历史记录。
当你使用这个命令,而不是立即添加所有的变化到索引,它会经历每个变化,并询问你想要做什么。这样,它可以让你交互地选择你想要承诺的东西。
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