Git常用命令

基本操作

用户配置

git config --global user.name "silence"
git config --global user.email "silence@163.com"

配置级别

  • local(默认,高级优先):只影响本地仓库
  • global(中优先级):只影响所有当前用户的git仓库
  • system(低优先级):影响到全系统的git仓库

常用命令

//初始化仓库
git init  
//对状态的跟踪
git status
//添加文件内容到暂存区(同时文件被跟踪)
git add
//添加所有文件
git add .
//仅从暂存区删除
git rm --cached 
//仅从暂存区删除整个test文件夹
git rm --cached  -r test
//从暂存区与工作目录同时删除
git rm 
//删除所有被跟踪,但是在工作目录被删除的文件
git rm $(git ls-files --deleted)
//从暂存区提交 -m:注释
git -commit -m 'first commit'
//从工作区提交
git commit -a -m 'full commit'

关于git status

git status介绍:
git中有两个状态:内容状态和文件状态,
内容状态标示内容文件的改变,有三个区域:工作目录,暂存区和提交区
文件状态有两个状态:已跟踪和未跟踪

分支操作

git branch

//创建一个分支
git branch <branchName> 
//删除一个分支
git branch -d <branchName> 
//显示所有分支信息
git branch -v 

git checkout

//通过移动HEAD检出版本,可用于切换分支
git checkout <branchName> 
//创件一个分支并切换
git checkout -b <branchName> 
//将其移动到一个引用
git checkout <reference> 
//恢复到上一个分支
git checkout - 

git reset

//git reset   将当前分支回退到历史某个版本
git reset --mixed <commit> //(默认)
git reset --soft<commit> 
git reset --hard <commit> 
git reflog

git stash

// 通过save 后面传入信息标识 放到stash区
git stash save "push to stash area" 
//查看收藏的记录
git stash llist
//将保存的内容重新恢复到工作目录
git stash apply stash@{0}
//将对应的stash记录删除
git stash drop stash@{0} 
//= git stash apply + git stash drop
git stash pop 

git merge

//默认  不会显示 feature,只保留单条分支记录。git直接把HEAD指针指向合并分支的头,完成合并。属于“快进方式”,不过这种情况如果删除分支,则会丢失分支信息。因为在这个过程中没有创建commit
merge fast-forward 
//指的是强行关闭fast-forward方式。可以保存之前的分支历史。能够更好的查看 merge历史,以及branch 状态
git merge --no-ff
//修剪提交历史基线,俗称“变基”
git rebase 
git rebase --onto master 5755487
//对某个提交设置一个别名
git tag 

远程操作

//初始化一个本地的远程服务器
git init ~/git-server --bare  
//将本地历史推送到远程
git push 

//添加一个远程仓库的别名
git remote add  origin ~/git-server
//查看远程仓库信息
git remote -v 

//获取远程仓库的提交记录
git fetch 
// git pull = git fetch + git merge
git pull 
//克隆一个远程仓库作为本地仓库
git clone 


上一篇 下一篇
评论
说点什么吧?

发表评论

取消回复