git config --list
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
创建SSH KEY
ssh-keygen -t rsa -C "youremail@example.com"
查看所有分支
git branch
创建分支
git branch 分支名
查看本地分支与远端分支的关联
git branch -vv
切入一个已存在分支
git checkout 已存在的分支名
git switch 已存在的分支名
新建分支并切入该分支
git checkout -b 分支名
git switch -c 分支名
在本地创建和远程分支对应的分支,使用
git checkout -b 分支名 origin/分支名,
本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用
git branch --set-upstream 分支名 origin/分支名;
删除分支
git branch -d 分支名
强制删除
git branch -D 分支名
合并某分支到当前分支
git merge 分支名
查看文件状态
git status
查看文件变更详情
git diff 文件名
将文件放入暂存区
git add 文件名
提交暂存区到当前分支
git commit -m "说明"
把当前工作区的修改暂时存起来
git stash
工作区是干净的,刚才的工作现场存到哪去了?
用git stash list命令看看
工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:
一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要
用git stash drop来删除;
另一种方式是用git stash pop,恢复的同时把stash内容也删了
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用
命令git reset --hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
git log
查看commit_id
git log --pretty=oneline
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
git reflog
放弃工作区某个文件的修改
git checkout --文件名
放弃工作区所有文件的修改
git checkout .
放弃暂存区某个文件的修改
git reset HEAD 文件名
根据commit_id进行指定分支版本回滚
git reset --hard commit_id
本地分支版本回滚到上一次commit
git reset --hard HEAD^
git merge --abort
该命令仅仅在合并后导致冲突时才使用。git merge --abort将会抛弃合并过程并且尝试重建合并前的状态