zoukankan      html  css  js  c++  java
  • Git 进阶:10大技巧让你迅速提升

    1.Git自动补全

    假使你使用命令行工具运行Git命令,那么每次手动输入各种命令是一件很令人厌烦的事情。

    命令:

    cd ~

    curl https://raw.github.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash

    然后,添加下面几行到你的 ~/.bash_profile 文件中:

    if [ -f ~/.git-completion.bash];then

      .~/.git-completion.bash

    fi

    2.在Git中忽略文件

    Git忽略掉那些特定的文件和文件夹,只需要创建一个名为 .gitgnore然后列出那些你不希望Git跟踪的文件和文件夹。

    你还可以添加例外,通过使用感叹号(!).

    *.pyc

    *.ext

    my_db_config/

    !main.pyc

    3. 显示文件中每一行的作者,最新的变更提交和提交时间展示出来。

    git blame [file_name]

    git blame demonstration

    4.查看仓库历史记录

    上一节我们已经学习了如何使用git log,不过,这里还有三个你应该知道的选项。

    --oneline- 压缩模式,在每个提交的旁边显示经过精简的提交哈希码和提交信息,以一行显示。

    -graph- 图形模式,使用该选项会在输出的左边绘制一张基于文本格式的历史信息表示图。如果你查看的是单个分支的历史

    记录的话,该选项无效。

    --all- 显示所有分支的历史记录

    5 绝对不要丢失对commit的跟踪

    假设你不小心提交了你不想要的东西,不得不做一次强制重置来恢复到之前的状态。然后,你意识到在这一过程中

    你丢失了其他一些信息并且想要把他们找回来,或者至少看一眼,这正是git reflog可以做到的。

      一个简单的git log 命令可以为你展示最后一次commit,以及他的父亲,还有他父亲的父亲等等。

    而git reflog则列出了head曾经指向过的一系列commit。要明白他们只存在于你本机中;而不是你的版本仓库的一部分,

    一不包含在push和merge操作中。

    6.暂存文件的部分改动

    一般情况下,创建一个基于特性的提交是比较号的做法,意思是每次提交都必须代表一个新特性的产生或者

    是一个bug的修复。如果你修复了两个bug,或者添加了多个新特性但是却没有提交这些变化会怎样呢,

    在这种情况下,你可以把这些变化放在一次提交中。但更好的方法是把文件暂存(Stage)然后分别提交。

    例如你对一个文件进行了多次修改并且想把他们分别提交。这种情况下,你可以在add命令中加上-p参数

    git add -p [file_name]

    我们来演示一下在file_name文件中添加了3行文字,但只想提交第一行和第三行。先看一下git diff 显示的结果:

    7.压缩多个commit

    用rebase命令把多个commit压缩成一个

    git rebase -i HEAD~[number_of_commits]

    如果你想要压缩最后两个commit ,你需要运行下列命令。

    git rebase -i HEAD~2

    9.检查丢失的提交

    尽管 reflog是唯一检查丢失提交的方式。但它不是适应于大型的仓库。那就是fsck(文件系统检测)

    git fsch --lost-found

  • 相关阅读:
    Python动态展示遗传算法求解TSP旅行商问题
    MOEAD算法中均匀权向量的实现---Python
    HDU 5294 多校第一场1007题 最短路+最小割
    POJ 3261 Milk Patterns sa+二分
    HDU 4292 FOOD 2012 ACM/ICPC Asia Regional Chengdu Online
    CodeForces 201A Clear Symmetry
    POJ 1679 The Unique MST 确定MST是否唯一
    POJ 3268 Silver Cow Party 最短路 基础题
    POJ 2139 SIx Degrees of Cowvin Bacon 最短路 水題
    POJ2229 Sumsets 基礎DP
  • 原文地址:https://www.cnblogs.com/simadongyang/p/8456516.html
Copyright © 2011-2022 走看看