前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于 Git 你所不知道的一些事

关于 Git 你所不知道的一些事

作者头像
用户8705057
修改2021-06-08 10:58:05
2530
修改2021-06-08 10:58:05
举报
文章被收录于专栏:linux百科小宇宙

上周五我由于使用了git reset --HARD 而使得我丢掉了我的提交(糟糕透顶),因此,我决定是时候重新学习一下git了。

这篇文章讲的不是git基础的一些东西,而是那些你不知道或者只用过一两次的东西。

从 reset --HARD 中恢复提交

使用 git reflog 命令就好了.

(由

Gittenberg

提供)

Diff

如果你想查看两个分支之间有什么不同之处,你只需要这样做:git diff branch1..branch2。

通过正则表达式匹配提交信息并显示

使用 git show :/fixes 命令,你可以找到提交信息中包含传入的字符串(这个例子中是

fixes

)的最近的提交。

限制 git push 的默认行为

如果你运行git push,默认的行为是将所有的分支提交到远程代码库。这可能会导致很多问题,如果你不想这么做,你可以:git config --global push.default tracking。

更新: Git 2.0 移除了这个默认的行为 http://blog.nicoschuele.com/posts/git-2-0-changes-push-default-to-simple

切换到一个分支 rebase 并 merge 到 maste

可以这样做:git rebase HEAD feature && git rebase HEAD @{-2}

Git 保存工作状态

如果由于你的工作还没有完成,但此时又有紧急的是找上你,你可以使用 git stash 来保存这些修改,提交你紧急的任务,之后再用 git stash pop 恢复到你保存时的状态。

别名

你还在为一次又一次的输入 checkout 而感到讨厌吗?现在就去尝试:git config --global alias.co checkout。你就可以通过:git co master 命令来切换到master了。

重命名一个本地分支

使用:git branch -m old-name new-name 你可以很容易的重命名一个本地分支。

搜索作者名称

你可以通过使用git log --author=Matheus 来搜索一个指定作者的提交记录。

给git status 加上参数

大多数人仅使用git status,但是,你可以传入参数来改变状态显示的方式。

使用git status -sb 你可以得到类似下面这样的输出:

## maste

M Gemfile

M Gemfile.lock

M app/controllers/home_controller.rb

M app/views/home/index.html.erb

在Ubuntu Server上安装Git http://www.linuxidc.com/Linux/2009-06/20421.htm

服务器端Git仓库的创建(Ubuntu) http://www.linuxidc.com/Linux/2011-02/32542.htm

Linux下Git简单使用教程(以Android为例) http://www.linuxidc.com/Linux/2010-11/29883.htm

Git权威指南 PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91053.htm

本文系转载,前往查看

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

本文系转载前往查看

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档