版本控制:git常用命令

来源:互联网 发布:omtp转ctia软件 编辑:程序博客网 时间:2024/05/29 07:00
概念预热:
1 工作区:working directory
2 暂存区:stage
3 版本库: reponsitory
自己创建项目,初始化git追踪以后;首先会在工作区对项目作出修改(代码文本修改,增加文件,删除文件等)

git status:查看当前分支状态(是否有文件修改,没有暂存,没有提交等)
git diff:比较工作区和暂存区之间的修改之处;就是自己本次在没有add之前修改了什么内容
git diff -- <file>:比较<file>文件工作区和暂存区之间的修改之处
git diff --cached:比较暂存区和当前分支的不同之处

如果发现自己还没有add(暂存)的文件的修改有问题,需要撤销修改
git checkout -- <file>:撤销某个文件的修改,还没有add的时候使用
git checkout . :撤销所有文件的修改,还没有add的时候使用

确定本次修改没有问题,可以先暂存到暂存区
git add <file>:把某个文件的修改暂存到暂存区
git add -A:把本次对所有文件的修改一次暂存到暂存区
git add . :把本次对所有文件的修改一次暂存到暂存区

如果发现自己已经暂存(add)的文件有问题,但是还没有commit,可以撤销暂存
git reset head <file>:取消对<file>文件的暂存;用于当add了修改到暂存区,但是还没有commit给版本库的时候使用
git reset head . :取消暂存区所有文件的暂存;用于当add了修改到暂存区,但是还没有commit给版本库的时候使用

如果发现没问题,可以把暂存区的修改,统一提交到版本库中
git commit -m "log" :提交暂存区的修改到版本库中当前分支。
git log:查看版本提交记录
git reflog:查看所有的版本提交记录

如果发现某个分支有问题,希望回到之前的版本
git reset --hard HEAD^:回退到上个版本
git reset --hard HEAD~<num>:向上回退num个版本,比如git reset --hard HEAD~2
git reset --hard <commit id>:回退到指定版本位置
原创粉丝点击