git命令
git status : 查看状态
git log : 查看操作日志
git clone <url> : 从github上克隆仓库到本地
git add <file.name> : 文件从工作添加到暂存区
git add . : 提交所有文件从工作区到暂存区
git commit -m "注释" : 从缓存区提交到版本区
git commit -a -m "注释" : 直接从工作区提交到版本区
git config --global user.name <user.name> : 设置用户名
git config --global user.email <user.email> : 设置邮箱名
对比:
git diff : 工作区和暂存区的区别
git diff --cached(--staged) : 暂存区和版本区的区别
git diff master : 工作区和版本区的区别
撤销:
git reset HEAD <file.name> : 暂存区撤销到工作区
git checkout -- <file.name> : 工作区撤销回版本区的最新状态
git commit (-a -m "注释") --amend : 在工作区修改了多个文件,只提交了一部分文件,然后还想提交另外一部分,如果你再次提交,这样会是俩次提交,
使用这个命令只是提交一次,上一次提交一部分的不存在了
删除:
git rm <file.name> :工作区删了文件,删除对应的暂存区的文件,如果工作区有这文件,使用此命令是没用的
git rm -f <file.name> : 工作区和暂存区都有这个文件,都删除
git rm --cached <file.name> : 工作区和暂存区都有这文件,删除暂存区
恢复:
git checkout <commit-id> <file.name> : 还原某个提交版本的某个文件
git reset --hard <commit-id> : 还原某个版本
git reset --hard HEAD^ : 还原最新版本区的上一个版本
git reset --hard HEAD~<num> : 还原最新版本区的上num个版本
git reflog : 查看最近的操作行为,方便还原某个版本
同步到远程仓库:
git remote : 查看远程仓库的名字
git remote -v : 查看远程仓库的url地址
git push <远程仓库名> <分支名> : 推送代码到远程仓库
git fetch : 拉取远程仓库代码,不合并当前工作区代码
git diff master origin/master : 使用git fetch后,使用此命令查看远程仓库和工作区代码的区别
git merge orgin/master : 使用git fetch后合并当前工作区代码
git pull : 拉取远程仓库代码,合并当前工作区代码
分支:
git branch : 查看分支
git branch <分支名> : 创建一个分支
git checkout <分支名> : 切换到某个分支上
git checkout -b <分支名> : 创建一个分支并且切换到改分支上
git merge <分支名> : 在master上使用此命令,合并分支
git branch --merged : 查看与master合并的分支
git branch --no-merged : 查看没有与master合并的分支
git branch -d <分支名> : 删除与master合并的分支
git branch -D <分支名> : 删除没有与master合并的分支