三分钟教你学Git(二)之命令索引
2014-04-29 15:00
141 查看
记住这三个概念,工作区(Working Area),暂存区(Stage),版本库,通过add,工作区的变化到暂存区,通过commit暂存区的变化到本地版本库,通过push本地版本库的变化到远程版本库。下面是常用的命令。
保存进度恢复工作进度
#把工作区和暂存区的内容保存到进度列表里
git stash save “description”
#把工作区和暂存区的所有内容都保存到进度列表里,包括untracked的文件。
git stash save -u 'description'
#列出stash里的所有项
git stash list
#把进度恢复出来并删除进度列表中的项
git stash pop stash@{2}
#只把进度恢复出来,不删除进度列表中的项
git stash apply stash@{1}
#丢弃进度列表中的相关项
git stash drop stash@{3}
查看变化
#暂存区与工作区相比较的变化
git diff
#版本库和工作区相比较的变化
git diff head
#版本库和暂存区相比较的变化
git diff -cached
#将工作区与stash对比
git stash show -p stash@{0}
提交变化
#把工作区中文件fielname的变化提交到暂存区
git add filename
#把本地文件的变更(修改,删除)保存到暂存区
git add -u
#把本地文件的变更(修改,删除,新增)保存到暂存区
git add -A
#交互式命令
git add -i
#把暂存区的变化提交到版本库
git commit
#把版本库提交到远程仓库
git push
恢复内容从版本库或暂存区到暂存区或工作区
#把暂存区的内容覆盖到当前工作区
git checkout -- filename
#切换分支
git checkout hongchangfirst/vice
查看日志
git log --graph --oneline --decorate
查看当前状态
git status
重置已有提交
#改变master的指向,也替换暂存区和工作区
git reset --hard
#只改变master的指向
git reset --soft
#只改变master的指向和暂存区的内容,但不改变工作区的内容
git reset
git reset --mixed
里程碑
#对某一次提交建立一个标签
git tag -m “description” old_milestone
删除文件
#只在工作区中删除
rm filename
版本克隆与同步
git clone repository workingdirectory
git pull=git fetch + git merge
git push
清理(无引用的)悬挂的松散对象
#查看悬挂松散对象
git fsck
#清理悬挂松散对象
git prune
创建分支,切换到分支上
#创建分支
git branch branchone
#切换到分支上
git checkout branchone
#创建分支branchone并切换到其上
git checkout -b branchone
#推送到远程分支
git push origin branchone
#设置上游分支
git branch --set-upstream-to=origin/branchone
#删除本地分支
git branch -d branchone
#删除远程分支,注意冒号前边有一个空格,代表推送空分支到远程分支,等同于删除。
git push origin :to_be_deteled_branch
查看哪些提交领先于远程版本
git cherry
git的文件忽略(.gitignore)只对未入库的文件起作用。
git对象库的四类对象:commit,blob,tag,tree
原文:http://blog.csdn.net/hongchangfirst/article/details/8276502
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
保存进度恢复工作进度
#把工作区和暂存区的内容保存到进度列表里
git stash save “description”
#把工作区和暂存区的所有内容都保存到进度列表里,包括untracked的文件。
git stash save -u 'description'
#列出stash里的所有项
git stash list
#把进度恢复出来并删除进度列表中的项
git stash pop stash@{2}
#只把进度恢复出来,不删除进度列表中的项
git stash apply stash@{1}
#丢弃进度列表中的相关项
git stash drop stash@{3}
查看变化
#暂存区与工作区相比较的变化
git diff
#版本库和工作区相比较的变化
git diff head
#版本库和暂存区相比较的变化
git diff -cached
#将工作区与stash对比
git stash show -p stash@{0}
提交变化
#把工作区中文件fielname的变化提交到暂存区
git add filename
#把本地文件的变更(修改,删除)保存到暂存区
git add -u
#把本地文件的变更(修改,删除,新增)保存到暂存区
git add -A
#交互式命令
git add -i
#把暂存区的变化提交到版本库
git commit
#把版本库提交到远程仓库
git push
恢复内容从版本库或暂存区到暂存区或工作区
#把暂存区的内容覆盖到当前工作区
git checkout -- filename
#切换分支
git checkout hongchangfirst/vice
查看日志
git log --graph --oneline --decorate
查看当前状态
git status
重置已有提交
#改变master的指向,也替换暂存区和工作区
git reset --hard
#只改变master的指向
git reset --soft
#只改变master的指向和暂存区的内容,但不改变工作区的内容
git reset
git reset --mixed
里程碑
#对某一次提交建立一个标签
git tag -m “description” old_milestone
删除文件
#只在工作区中删除
rm filename
版本克隆与同步
git clone repository workingdirectory
git pull=git fetch + git merge
git push
清理(无引用的)悬挂的松散对象
#查看悬挂松散对象
git fsck
#清理悬挂松散对象
git prune
创建分支,切换到分支上
#创建分支
git branch branchone
#切换到分支上
git checkout branchone
#创建分支branchone并切换到其上
git checkout -b branchone
#推送到远程分支
git push origin branchone
#设置上游分支
git branch --set-upstream-to=origin/branchone
#删除本地分支
git branch -d branchone
#删除远程分支,注意冒号前边有一个空格,代表推送空分支到远程分支,等同于删除。
git push origin :to_be_deteled_branch
查看哪些提交领先于远程版本
git cherry
git的文件忽略(.gitignore)只对未入库的文件起作用。
git对象库的四类对象:commit,blob,tag,tree
原文:http://blog.csdn.net/hongchangfirst/article/details/8276502
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
相关文章推荐
- 用background-size实现 背景图片自适应浏览器大小,但不变形
- mysql更新一个表里的字段等于另一个表某字段的值
- SpringMVC前传--SpringMVC(1)
- java class详解及反射机制
- iOS文件系统的管理
- 使用 vim + ctags + cscope + taglist 阅读源码 - bo博的个人空间 - 开源中国社区
- 黑马程序员—java中的异常
- WinDBG 技巧:如何生成Dump 文件(.dump 命令)
- 20140429收盘小结
- POJ 1163 The Triangle (简单线性dp)
- Android Volley完全解析(三),定制自己的Request
- DMP文件的生成和使用
- Core Foundation 框架【转】
- Core Animation之多种动画效果
- ubuntu13.04 设置宽带连接
- Android Volley完全解析(二),使用Volley加载网络图片
- Android 程序框架设计
- Be the Best of Whatever You Are
- apache:侧重于http server tomcat:侧重于servlet引擎
- PS 图像调整算法——自动对比度 (Auto Contrast)