git小结
1.创建本地与远程分支
先创建远程分支,再创建本地分支,再将本地分支与远程分支关联
git fetch 获取远程分支
git checkout remote_branch 或者 git checkout -b local-branch origin/remote_branch 将远程分支映射到本地命名为local-branchname的分支
先创建本地分支,再将本地分支推送的远程,创建远程分支
git checkout -b local-branch
git push origin local-branch 将本地分支推送至对应远程分支,若对应远程分支不存在,会被新建
2.撤销修改
撤销工作区的修改
git checkout -- <file> 撤销指定文件
git checkout . 撤销指定目录的所有文件
暂存区的修改撤回工作区
git reset HEAD file
版本库后退
git revert HEAD 撤销当前版本
git revert HEAD^ 撤销上个版本
版本回退
git reset --hard commit_id 回退到指定版本,工作目录中修改被丢弃,执行push之前回退
git revert commmit_id 新提交回退到指定版本,执行push之后回退
git reflog 查看命令历史
git log 查看commit历史
3.查看远程主机信息
git remote -v 查看远程主机和网址
git remote add <主机名> <网址> 添加远程主机
4.查看分支信息
git branch -vv 本地分支与远程分支的对应关系
git branch --set-upstream local origin/remote 跟踪远程分支
5.git add 相关
git add -A stages All
git add . stages new and modified, without deleted
git add -u stages modified and deleted, without new
git add -i 交互式暂存
6.重命名或移动文件
git mv <原文件名称> <新文件名称>
7.直接提交所有文件
git commit -a stages All and repo All
8.git tag 相关
查看标签
git tag 查看所有标签
git tag -l "xxx.xx*" 查看模式匹配的标签
git show [tagName] 查看标签的版本信息
打标签
git tag [tagName] 创建本地轻量标签
git tag -a [tagName] -m [comment] 创建本地附注标签
git tag -a [tagName] [commit_id] 创建指定版本的标签
git push origin [tagName] 创建远程标签
git push origin --tags 推送本地所有标签
切换到标签
git checkout [tagName]
删除标签
git tag -d [tagName] 删除本地标签
git push origin :refs/tags/[tagName] 删除远程标签
9.本地分支与远程分支不同名
git push origin local-branch:remote-branch
10.git config
git config --global user.name [username]
git diff 显示合并冲突文件,比较工作区与暂存区的差异
git diff --base <filename> 查看某个合并冲突文件
git diff <branchA> <branchB> 对比分支差异(patch)
git diff [branchA]…[branchB] 对比分支差异
git diff --cached 暂存区和上次提交的差异
git diff HEAD 工作区和上次提交的差异
git diff [tag] 自从某个版本之后都改动了什么
12.git 删除和重命名文件
# 删除工作区文件,并且将这次删除放入暂存区
$ git rm [file1] [file2] ...
# 停止追踪指定文件,但该文件会保留在工作区
$ git rm --cached [file]
# 改名文件,并且将这个改名放入暂存区
$ git mv [file-original] [file-renamed]
13. 查看单个文件历史
# 显示某个文件的版本历史,包括文件改名
$ git log --follow [file]
$ git whatchanged [file]
# 显示指定文件相关的每一次diff
$ git log -p [file]
14.查看所有用户修改历史
# 显示所有提交过的用户,按提交次数排序
$ git shortlog -sn
# 显示指定文件是什么人在什么时间修改过
$ git blame [file]
15.查看某个版本修改的文件
# 列出修改过的文件名
$ git show commitId --name-only
# 列出修改过的文件名和状态
$ git show commitId --name-status
git小结的更多相关文章
- git小结-ms
目录 1.git是什么 2.git怎么工作的 3.git常用命令 4.git提效工具 5.git的技术用语 1.git是什么 git是开源的分布式的版本控制系统,可以有效.高速地处理的项目版本管理.g ...
- Spring+SpringMVC+MyBatis+LogBack+C3P0+Maven+Git小结(转)
摘要 出于兴趣,想要搭建一个自己的小站点,目前正在积极的准备环境,利用Spring+SpringMVC+MyBatis+LogBack+C3P0+Maven+Git,这里总结下最近遇到的一些问题及解决 ...
- git 小结
git cherry-pick de0ec64 可将另一个分支中的提交 cherry-pick到当前分支来
- iOS版本控制git小结--yoowei
# 显示隐藏文件 defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder # 不显示隐藏文件 d ...
- GIT入门笔记(19)GIT 小结
1.add和commit为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:$ git add file1.txt$ g ...
- 版本控制之Git小结
一.版本控制 1.1 什么是版本控制 版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统.可以对任何类型的文件进行版本控制. 1.2 为什么需要版本控制 有了版本控制就可以 ...
- Git小结---So far.......
基本的: 1. 在配置了SSH Key的情况下,clone项目时使用:git clone git@github.com/用户名/仓库名.git 使用这种方式而不使用https的方式的好处在于,在pu ...
- git参考, 小结
git官网: https://git-scm.com 菜鸟教程: http://www.runoob.com/git/git-tutorial.html 廖雪峰: https://www.liaoxu ...
- 记一次小团队Git实践(上)
公司规模不大,成立之初,选择了svn作为版本控制系统.这对于用惯了git的我来说,将就了一段时间后,极为不爽,切换到git-svn勉强能用.随后,因为产品需要发布不同的版本,而git-svn对远程分支 ...
随机推荐
- [转]World Wind学习总结一
WW的纹理,DEM数据,及LOD模型 以earth为例 1. 地形数据: 默认浏览器纹理数据存放在/Cache/Earth/Images/NASA Landsat Imagery/NLT Landsa ...
- php基础24:数组range
<?php $numbers = range(1, 10); echo "<pre>"; var_dump($numbers); echo "</ ...
- openssl实践总结
openssl实验总结 OPENSSL简介 OpenSSL项目是一个协作开发一个健壮的,商业级的,全功能的,并且开放源代码工具包,它实现了安全套接字层(SSL v2/v3)和传输层安全(TLS v1) ...
- DLL中调用约定和名称修饰(一)
DLL中调用约定和名称修饰(一) 调用约定(Calling Convention)是指在程序设计语言中为了实现函数调用而建立的一种协议.这种协议规定了该语言的函数中的参数传送方式.参数是否可变和由谁来 ...
- 细说 Web API参数绑定和模型绑定
今天跟大家分享下在Asp.NET Web API中Controller是如何解析从客户端传递过来的数据,然后赋值给Controller的参数的,也就是参数绑定和模型绑定. Web API参数绑定就是简 ...
- 如何部署Iveely.Computing分布式实时计算系统
Iveely.Computing是参考Storm的分布式实时计算系统的部分原理,用纯Java实现的轻量级.迷你型,适合于搜索引擎的实时计算系统, Iveely 搜索引擎是一款基于Iveely.Comp ...
- php并发请求
一般在php进行请求url的时候,直接用 fopen 函数就可以搞定了,比如像这样: $file=fopen("http://www.cnblogs.com","r&qu ...
- 文件夹文件遍历并插入数据库的操作,IO Directory File的递归操作
在我们管理内容管理系统时,数据量大时,对机器的依赖性就比较强了,比如,我要将一个文件夹中的很多图片上传到网站,一个个上传会很花时间,就想到了通过遍历文件夹得到文件名,并将路径与文件保存到数据库中对应的 ...
- linux中的数值运算
一.declare 作用:声明变量类型,bash默认变量为字符串类型的,并且字符串在拼接时直接拼接,不需要加号 使用方法: 二.数值运算 加法运算 a= b= c=$(($a+$b)) echo $c
- 工作的思考十五:升职前需要做的准备(TeamLeader)
当一个人在公司的工作年限以及经验的积累到达一个程度的时候,升职其实是件高兴的事,但面临角色的转变需要提前做些准备的. 其实如果你对你的职业规划很清楚的话,那么你就应该在升职之前就会开始进行角色的转换. ...