设为首页 收藏本站
查看: 1796|回复: 0

[经验分享] 你不一定知道的几个很有用的 Git 命令

[复制链接]

尚未签到

发表于 2018-1-14 19:54:04 | 显示全部楼层 |阅读模式
  这里给大家分享一些很有用的 Git 命令,其中很多用法你可能都不知道,无论你是工作在团队环境中或在您的个人项目中,这些命令将对你帮助很大,让你可以更加高效的进行项目开发,更轻松愉快的工作和生活。

您可能感兴趣的相关文章

  • Web 前端开发人员必读的精华文章推荐
  • 小伙伴们惊呆了!8个超炫的 Web 效果
  • 35个让人惊讶的 CSS3 动画效果演示
  • 8个惊艳的 HTML5 和 JavaScript 特效
  • 2014年最值得关注的网页设计流行趋势

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

git archive -o ../updated.zip HEAD $(git diff --name-only HEAD^)  


2. 导出两次提交之间修改过的文件
  同样,如果你需要导出两次提交之间修改过的文件,你可以用这一个。
  

git archive -o ../latest.zip NEW_COMMIT_ID_HERE $(git diff --name-only OLD_COMMIT_ID_HERE NEW_COMMIT_ID_HERE)   


3. 克隆一个特定的远程分支
  如果你想从远程仓库克隆特定的一个分支,这条命令对你很有用:
  

git init  
git remote add -t BRANCH_NAME_HERE -f origin REMOTE_REPO_URL_PATH_HERE
  
git checkout BRANCH_NAME_HERE
  


4. 从无关的本地仓库应用补丁
  如果您需要申请从提交的一些其他不相关的创库到本地存储库,这里是一个快捷的方式:
  

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


5. 检查您的分支变化是是否其他分支的一部分
  cherry 命令可以让你检查你的分支的变化是否存在于其他一些分支之中。它会显示在当前分支相对于给定的分支的修改,用+或-标志提示提交合并与否。+表示不存在,而-表示存在于给定的分支。
  

git cherry -v OTHER_BRANCH_NAME_HERE  
#For example: to check with master branch
  
git cherry -v master
  


6. 启动一个无历史的新分支
  有时候,你需要启动一个新的分支,同时想摒弃历史信息,例如,你想将代码放在公共领域(开源)又不想共享历史信息。
  

git checkout --orphan NEW_BRANCH_NAME_HERE   


7. 在不切换分支的情况下从其它分支检出文件
  下面的命令是从其他分支获取文件,而不用切换分支。
  

git checkout BRANCH_NAME_HERE -- PATH_TO_FILE_IN_BRANCH_HERE  


8. 忽略跟踪文件的修改
  如果你工作在一个团队,他们都是工作在同一个分支,你需要频繁的读取/合并文件。但是有时复位了你环境的特定配置,你必须在合并后每一次都再改一下。使用这个命令,你可以忽略更改特定的文件:
  

git update-index --assume-unchanged PATH_TO_FILE_HERE  


9. 检查提交的修改是否发布版本的一部分
  这个 name-rev 命令可以告诉你提交相对于最新发布版本的位置。利用这一点,你可以检查你的变化是否发布版本的一部分。
  

git name-rev --name-only COMMIT_HASH_HERE    


10. 使用 pull rebase 操作替代 merge
  如果你工作的团队正工作在同一个分支,那么你所要做的获取/合并或经常拉取。分支合并的 git 记录与合并提交时提示功能分支被并入主干。但在多个团队成员工作的同一分支的情况下,经常合并导致在日志中多个合并的消息引起混乱。所以你可以使用 pull rebase,以保持历史信息清除了无用合并的消息。
  

git config branch.BRANCH_NAME_HERE.rebase true    

  此外,您可以配置一个特定的分支总是衍合:
  

git pull --rebase  

  


您可能感兴趣的相关文章

  • 2013年最受欢迎的10篇前端开发博文
  • 期待已久的2013年度最佳 jQuery 插件揭晓
  • 小伙伴们都惊呆了!8个超炫的 Web 效果
  • 推荐35款精致的 CSS3 和 HTML5 网页模板
  • 精选12款优秀 jQuery Ajax 分页插件和教程
  英文链接:10 Useful Advanced Git Commands
  编译来源:梦想天空 ◆ 关注前端开发 ◆ 分享网页资源
  本文来自【梦想天空(http://www.cnblogs.com/lhb25/)】

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435108-1-1.html 上篇帖子: git代码合并:Merge、Rebase的选择 下篇帖子: webstorm 去掉编辑区的白线 http://jingyan.baidu.com/article/e75057f2c3a2efebc91a8921.html
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表