git常用技巧
一般的过程:①如果还没有库先用 git clone 克隆一个库。②使用 git checkout master切换到master分支。③使用 git pull 同步远程master分支(即git fetch + git merge,可用git pull -rebase避免merge垃圾提交信息)。④使用 git checkout -b myBranch 基于master分支创建一个新分支myBranch,等同于 git branch myBranch + git checkout myBranch。⑤使用 git add 将变更添加到暂存区。⑥使用 git status 查看状态。⑦使用 git commit 提交变更到本地仓库。⑧使用 git push 推送到远程库。常用技巧:
- Git忽略文件:创建.gitignore文件并在里面配置需要忽略的文件和目录。
- 本地仓库与远程仓库同步:git fetch
- 合并多个本地提交: git rebase -i
- 修改已提交信息:git commit –amend
- 回退提交:git reset(直接删除提交,但如果与其他分支merge时可能又会引入) 或 git revert (将提交的内容删除后用一个新的提交去覆盖原来的提交,以后和其他分支merge时不会再引入)
- 合并分支:git merge
- 找出每行对应的作者:git blame somefile (加上-w忽略空格差异)
- 查看提交记录:git log --oneline --graph(每个提交一行地显示分支树图),git log -p filename(查看某个文件的变更日志,可用less工具),git log -S 'pattern'(查看符合pattern的提交),git log -L 1,8:somefile(查看某个文件的某些行的变更)
- 查看其他某个分支的某个文件内容:git show somebranch:somefile
- 保存尚未提交的变更后恢复:git stash -> git stash list -> git stash apply stash@{num}
- 交互式暂存:git add -p (选择性地add)
- git状态:git status
- 避免git pull导致merge提交信息:用git pull –rebase替换git pull,它使git先将远程分支上的变更pull到本地,然后将尚未push的提交重新以这个最新版本作为基础添加进去,这样就可以避免合并带来的丑陋信息。
- 差异比较:git diff 或 git diff -w (忽略空格差异)
- 别名:git config --global alias.别名 "命令行"
git常用技巧的更多相关文章
- git 常用技巧
撤销修改 撤销本地修改 git reset --hard 或者 git checkout -- . 切换分支 切换到前一分支 git checkout - 切换到某个分支 git checkout & ...
- [Git] Git 常用技巧
版本对比 1. 对比两个 COMMIT git diff <commit> <commit> 2. 对比 COMMIT 和父 COMMIT git diff <commi ...
- iOS开发——开发技巧&Git常用命令
Git常用命令 初始化git init 加—bare实现远程仓库 配置git config user.name iCocos 配置全局git config —global user.na ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- AS技巧合集「常用技巧篇」
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=254723&extra=page%3D2%26filter%3Dautho ...
- Git 常用命令详解(二)
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- git使用技巧
git使用技巧 转载自:http://172.17.144.8/iceway.zhang/shares/201604/201604_git_tips.md.html 我们在工作中几乎每天都会用到git ...
- 【转】 Git 常用命令详解(二)----不错
原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...
随机推荐
- 关于在同一个DIV下的Hover效果问题
例子: (function bindColumnRowHoverEvent(){ $('.ticket_list_body .work_product').live('mouseenter', fun ...
- rhel7 配置普通用户使用sudo
rhel服务器版本安装之后,默认创建的用户不能使用sudo.使用sudo,会提示 user1 is not in the sudoers file. This incident will be rep ...
- ng-book札记——内置指令
Angular提供了一些内置指令(directive),这些添加在HTML元素(element)上的特性(attribute)可以赋予更多的动态行为. NgIf ngIf指令用于在某个条件下显示或者隐 ...
- ACM 继续畅通工程
Problem Description 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计 ...
- linux TCP头部的构造的简单分析
TCP的头部的构造是在函数tcp_transmit_skb()中进行的 函数片段如下: /* Build TCP header and checksum it. */ th = tcp_hdr(skb ...
- iOS中的NSURLProtocol
转自:iOS知识小集 NSURLProtocol类(注意,这个不是协议)经常用于实现一些URL Loading System相关的黑魔法.它可以拦截URL Loading System相关的网络请求, ...
- Swift对象实例方法名混淆的解决
在Xcode7.x中,比如有以下一个类: class Foo{ func test(v:Int,before:Int)->Int{ return v + 1 } } 我可以直接这么做: let ...
- IntelliJ Idea 设置 Dialyzer
IntelliJ Idea 设置 Dialyzer(金庆的专栏)Erlang开发使用IDEA IDE可以设置外部工具Dialyzer, 然后就可以直接Tools->External Tools ...
- django-redis
linuxapt-get install redis-serverpip install django-redis vim /etc/redis/redis.conf maxmemory 20mb s ...
- Dynamics CRM2016 查询数据的三种方式的性能对比
之前写过一个博客,对非声明验证方式下连接组织服务的两种方式的性能进行了对比,但当时只是对比了实例化组织服务的时间,并没有对查询数据的时间进行对比,那有朋友也在我的博客中留言了反映了查询的时间问题,一直 ...