你不必定知道的几个颇有用的 Git 命令

  1. 导出最后一次提交修改过的文件   我一直在使用这个命令按期进行发送给其余人进行审查/整合。这条命令将把近期提交的修改过的文件导出到一个zip文件。

1git

git archive -o ../updated.zip HEAD $(git diff --name-only HEAD^)
  1. 导出两次提交之间修改过的文件   一样,若是你须要导出两次提交之间修改过的文件,你能够用这一个。

1日志

git archive -o ../latest.zip NEW_COMMIT_ID_HERE $(git diff --name-only OLD_COMMIT_ID_HERE NEW_COMMIT_ID_HERE)
  1. 克隆一个特定的远程分支   若是你想从远程仓库克隆特定的一个分支,这条命令对你颇有用:
git init 
git remote add -t BRANCH_NAME_HERE -f origin REMOTE_REPO_URL_PATH_HERE 
git checkout BRANCH_NAME_HERE
  1. 从无关的本地仓库应用补丁   若是您须要申请从提交的一些其余不相关的创库到本地存储库,这里是一个快捷的方式:

1 git --git-dir=PATH_TO_OTHER_REPOSITORY_HERE/.git format-patch -k -1 --stdout COMMIT_HASH_ID_HERE| git am -3 -kcode

  1. 检查您的分支变化是是否其余分支的一部分   cherry 命令可让你检查你的分支的变化是否存在于其余一些分支之中。它会显示在当前分支相对于给定的分支的修改,用+或-标志提示提交合并与否。+表示不存在,而-表示存在于给定的分支。
git cherry -v OTHER_BRANCH_NAME_HERE 
#For example: to check with master branch 
git cherry -v master
  1. 启动一个无历史的新分支   有时候,你须要启动一个新的分支,同时想摒弃历史信息,例如,你想将代码放在公共领域(开源)又不想共享历史信息。
git checkout --orphan NEW_BRANCH_NAME_HERE
  1. 在不切换分支的状况下从其它分支检出文件   下面的命令是从其余分支获取文件,而不用切换分支。
git checkout BRANCH_NAME_HERE -- PATH_TO_FILE_IN_BRANCH_HERE
  1. 忽略跟踪文件的修改   若是你工做在一个团队,他们都是工做在同一个分支,你须要频繁的读取/合并文件。可是有时复位了你环境的特定配置,你必须在合并后每一次都再改一下。使用这个命令,你能够忽略更改特定的文件:
git update-index --assume-unchanged PATH_TO_FILE_HERE
  1. 检查提交的修改是否发布版本的一部分   这个 name-rev 命令能够告诉你提交相对于最新发布版本的位置。利用这一点,你能够检查你的变化是否发布版本的一部分。
git name-rev --name-only COMMIT_HASH_HERE
  1. 使用 pull rebase 操做替代 merge   若是你工做的团队正工做在同一个分支,那么你所要作的获取/合并或常常拉取。分支合并的 git 记录与合并提交时提示功能分支被并入主干。但在多个团队成员工做的同一分支的状况下,常常合并致使在日志中多个合并的消息引发混乱。因此你可使用 pull rebase,以保持历史信息清除了无用合并的消息。
git config branch.BRANCH_NAME_HERE.rebase true

```  此外,您能够配置一个特定的分支老是衍合:

git pull --rebaseorm

相关文章
相关标签/搜索