GIT

  • .DS_Store 是什么

    使用 Mac 的用户可能会注意到,系统经常会自动在每个目录生成一个隐藏的 .DS_Store 文件.DS_Store (英文全称 Desktop Services Store)是一种由苹果公司的Mac OS X操作系统所创造的隐藏文件,目的在于存贮目录的自定义属性,例如文件们的图标位置或者是背景色的选择。相当于 Windows 下的 desktop.ini

    删除 .DS_Store

    如果你的项目中还没有自动生成的 .DS_Store 文件,那么直接将 .DS_Store 加入到 .gitignore 文件就可以了。如果你的项目中已经存在 .DS_Store

  • 时间:2017-03-28 10:28:01

    零、总结

    在提交代码之前,如何自动执行代码校验,通过才可提交?

    1. 在 .git/hooks目录下写shell脚本,添加校验
    2. 使用 npm 的 pre-commit 包,然后添加校验

    一、前言

    多人协作开发的时候,每个人都有自己喜欢的IDE,写代码的风格也各不相同,那么如何约束 代码的规范呢?

    可以使用 ESLint 来进行对代码的验证,提交之前验证一下,通过就 git commit

    如果每一次都手动验证, 那就挺浪费时间的,那么有啥办法可以解决没?

    网上查了下,发现有 node的模块 pre-commit 可以解决这个问题, 能够在 git

  • 时间:2017-02-20 11:03:04
    作者:转载

    一、错误:RPC failed; result=22, HTTP code = 411

    git push
    Counting objects: 147, done.
    Delta compression using up to 4 threads.
    Compressing objects: 100% (146/146), done.
    error: RPC failed; result=22, HTTP code = 411
    fatal: The remote end hung up unexpectedly
    Writing object
  • 场景

    由于误操作,经常可能会将一些测试方法等直接选中并 commit 到了本地仓库中。但是还没有 push 出去。
    这个时候,你可以用下面的方法补救。

    示例

    1. 删除最近的一次 commit, 但保留已有的修改
    $ git reset --soft HEAD~1
    1. 删除最近的一次 commit, 并且不保留任何已有修改
    $ git reset --hard HEAD~1
    1. 抛弃本地一切修改, 重置到与远程分支一致的状态
    $ git reset --hard origin/master

    注意,示例 1 - 2 必须确保已经切换到你要删除 commit 的那个分支上, 而不是在别的分支上。

  • lanlinlanlin/notes· 2 年前 GIT

    场景

    项目大,而且文件增删频繁。久而久之会积累下一大堆没用的 cache。不仅臃肿,而且会影响代码对比时的性能。

    清理

    git rm -r --cached .
    git add .
    git commit -m 'update cached'

    说明

    1. 首先清理到所有缓存
    2. 重新将现有的文件纳入追踪
    3. 提交当前造成的变动