• 关于Git和Github


    英文原文:Ten Things You Didn't Know Git And GitHub Could Do

      Git 和 GitHub 都是非常强大的工具。即使你已经使用他们很长时间,你也很有可能不知道每个细节。我整理了 Git 和 GitHub 可能提高日常效率的 10 个常用技巧。

      GitHub

      快捷键: t 和 w

      在你的源码浏览页面,按t可以快速进入模糊文件名搜索模式:

    clipboard.png

      在你仓库主页,按w可以快速进行分支过滤:

    clipboard.png

      在任意 GitHub 页面中,按?展示当前页面可用的快捷键:

    clipboard.png

      忽略空格: ?w=1

      在任意的 diff URL 添加?w=1用来整理缩进:

    clipboard.png

      按范围过滤提交记录: master@{time}..master

      你可以创建一个对比页面通过使用 URL github.com/user/repo/compare/{range}。范围(range)可以是两个 SHA 例如sha1…sha2或者两个分支名称例如master…my-branch。范围同时也非常智能的支持使用时间作为关注点。你可以通过master@{1.day.ago}…master过滤从昨天开始的提交。例如:链接,https://github.com/rails/rails/compare/master@{1.day.ago}…master显示 Rails 项目中全部昨天开始的提交记录和变化:

    clipboard.png

      按作者过滤提交记录: ?author=github_handle

      你可以通过在对比页面 URL 中增加?author=github_handle来按作者过滤提交记录。例如:链接https://github.com/dynjs/dynjs/commits/master?author=jingweno显示 jingweno 对 Dynjs 的提交记录:

    clipboard.png

      .diff 和 .patch

      在比较页面、合并请求页面或者评论页面的 URL 后增加.diff或者.patch,可以得到 diff 或者 patch 的文本格式。例如:链接https://github.com/rails/rails/compare/master@{1.day.ago}…master.patch显示 Rails 项目中全部昨天开始的提交记录和变化的文本格式:

    clipboard.png

      邮件回复

      你可以直接在收到的 GitHub 通知邮件进行评论,不必在网站页面中评论。GitHub 会正确的处理你的评论:

    clipboard.png

      链接行

      在文件展示页面,点击某行或者通过按SHIFT选择多行,URL 会有相应的改变。如果你要给你的队友分享一段代码是非常方便的:

    clipboard.png

      关注用户

      在合并请求、问题或者任何评论中中提到用户会使用户关注全部的后续通知:

    clipboard.png

      自动链接

      在合并请求、问题、或者任何评论中,sha 和问题码(例如:#1) 会被自动链接。并且,你也可以链接其它仓库的 sha 或者问题码,格式:user/repo@sha1或者user/repo#1。下面是一个评论中通过 sha 自动链接的例子:

    clipboard.png

      hub

      Hub 是 GitHub 的命令行。它提供了 Git 和 Github 之间的集成。一个最有用的命令就是在命令行输入hub pull-request创建 pull request。详见 readme.

      Git

      git log -p FILE

      查看README.md的修改历史,例如:

    > git log -p README.md

      git log -S’PATTERN’

      例如,搜索修改符合stupid的历史:

    > git log -S'stupid'

      git add -p

      交互式的保存和取消保存变化,使用:

    > git add -p

      git rm –cached FILE

      这个命令只删除远程文件,例如:

    > git rm --cached database.yml

      删除database.yml被保存的记录,但是不影响本地文件。这对删除已经推送过的忽略文件记录而且不影响本地文件是非常的方便的。

      git log ..BRANCH

      这个命令返回某个非 HEAD 分支的提交记录。假如你在一个功能分支,输入:

    > git log ..master

      返回全部 master 分支的历史记录,包括未被合并到当前分支的提交记录。

      git branch –merged & git branch –no-merged

      这个命令返回已合并分支列表或未合并的分支列表。这个命令对合并前检查非常有用。例如,在一个功能分支,输入

    > git branch --no-merged

      返回未合并到该分支的分支列表。

      git branch –contains SHA

      返回包含某个指定 sha 的分支列表。例如:

    > git branch --contains 2f8e2b

      显示全部包含提交2f832b的分支。这个命令对于验证git cherry-pick完成非常有帮助。

      git status -s

      返回一个简单版的 git status。我设置这个命令为默认 git status 来减少噪音。

      git reflog

      显示你在本地已完成的操作列表。

      git shortlog -sn

      显示提交记录的参与者列表。和 GitHub 的参与者列表相同。

      Summary

      Git 是一个设计良好的工具。了解它可以直接让你更有效率并成为一个更有才华的程序员。GitHub,在另一个方面,在 Git 基础上提供便利的团队合作特性。有能力使用 GitHub 也会提高你日常效率。

      为了更好的加深你对的 Git 和 Github 了解,我推荐一些资料:

    from:http://news.cnblogs.com/n/530478/

  • 相关阅读:
    Maven的安装及更改下载仓库
    maven如何配置
    hibernate+mysql的连接池配置
    Hibernate配置方式
    如何获得Webapp的根项目路径 即ServletContext.getRealPath() 的输入参数要以"/"开头
    JAVA WEB项目中各种路径的获取
    java创建文件和目录
    Button或者ImageButton的背景设为透明或者半透明
    ScrollView中嵌套ListView的问题
    Android中RelativeLayout各个属性的含义
  • 原文地址:https://www.cnblogs.com/spring87/p/4865389.html
Copyright © 2020-2023  润新知