本文分享了10条非常有用且先进的Git命令行语句,无论是运用在团队环境或是在私人项目中,你都可以直接来拿用。
1. 在最后提交中更改Export(Export changes done in last commit )
这个命令通常会使用定期发送已更改的项目,以方便其他人审查/集成。
git archive -o ../updated.zip HEAD $(git diff –name-only HEAD^) |
2. 在两次提交之间更改Export文件(Export changed files between two commits)
同样地,如果你需要在两次提交之间更改文件,可以选择以下这段代码。
git archive -o ../latest.zip NEW_COMMIT_ID_HERE $(git diff –name-only OLD_COMMIT_ID_HERE NEW_COMMIT_ID_HERE) |
3. 克隆一个特定的远程分支(Clone a specific remote branch)
如果你想从远程资源库中克隆一个特定的分支,而无需克隆整个资源库分支,那么下面的这段代码将对你有用。
git init git remote add -t BRANCH_NAME_HERE -f origin REMOTE_REPO_URL_PATH_HERE git checkout BRANCH_NAME_HERE |
4. 从不相关的本地资源库中应用补丁(Apply patch from Unrelated local repository)
这里有个快捷方式可帮助你实现。
view plaincopy to clipboardprint? git –git-dir=PATH_TO_OTHER_REPOSITORY_HERE/.git format-patch -k -1 –stdout COMMIT_HASH_ID_HERE| git am -3 -k |
5. 检查分支是否在其它分支中遭到更改(Check if your Branch changes are part of Other branch)
cherry这个命令,能够检查你的分支在其他分支中是否被更改。它会在当前的分支上显示变化,并注明+或-标识符。+代表不存在,-表示在现有的分支中存在。
view plaincopy to clipboardprint? git cherry -v OTHER_BRANCH_NAME_HERE #For example: to check with master branch git cherry -v master <br> |
6. 启动一个无历史记录的新分支( Start a new Branch with No History)
有时,你想启动一个新的分支,但并不想运行漫长的历史记录,例如,你想将代码放置在一个公共的域中(开源),但又不想共享历史。
git checkout –orphan NEW_BRANCH_NAME_HERE |
7. 从其他分支签出文件但无需切换分支( Checkout File from Other Branch without Switching Branches )
这里将教你如何获取想要的文件。
git checkout BRANCH_NAME_HERE — PATH_TO_FILE_IN_BRANCH_HERE |
8. 忽略追踪文件中的更改( Ignore Changes in a Tracked File )
如果你是在某个团队中工作,他们都在使用同一个分支,也许你会频繁使用提取/合并(fetch/merge),但这有时需要重置特定的配置文件,这就意味着在每次合并后你必须去做更改。现在,使用这个命令,你可以要求Git忽略更改特定文件。
git update-index –assume-unchanged PATH_TO_FILE_HERE |
9. 检查已提交部分是否在发布的版本中遭到更改(Check if committed changes are part of a release)
name-rev这个命令可以告诉你已提交到最新版本的某个位置。使用这个代码可帮助你检查,提交的部分是否在已发布版本中遭到更改。
git name-rev –name-only COMMIT_HASH_HERE |
10. 用复位替代合并(Pull with rebase instead of merge )
当某项特性分支被合并到主流中,此时该分支合并会在Git中以合并提交来进行记录。但是当团队中多个成员在同一个分支上工作时,常规的合并会导致多个合并消息在日志中呈现混乱状态。因此,你可以使用复位(rebase)来保持历史清晰,清除无用的合并消息。
git pull –rebase |
此外,你还可以通过配置一个特定的分支来复位。
git config branch.BRANCH_NAME_HERE.rebase true |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
如何从Web转到移动业务应用
一般移动业务应用只会提供企业Web应用的一部分功能。当从Web转向移动应用时,开发团队的最大挑战是决定为移动应用开发哪些功能以及如何交付这些功能。
-
从Web开发到交付:2015必备深度前端知识
过去这几十年,互联网已被证明是影响技术世界的最复杂最难以预测的系统之一。软件往往是基于部署在本地硬件(或至少本地网络)上的假设来进行设计的。
-
新程序语言将不同Web语言融合在一起
如果你是一名Web开发者,你最喜欢哪种编程语言?CSS?JavaScript?PHP?HTML 5?为什么选择这种语言?
-
PHP终于迎来了自己的正式语言规范
尽管PHP脚本语言早在1995年左右就已经诞生并在Web开发领域占据着重要地位,但其一直没有自己的正式语言规范——只提供广泛的用户说明文档。