首页 > 代码库 > 常用的git命令

常用的git命令

$git init 创建仓库,仓库创建后,目录中会新增一个.git文件夹,使用$ls -ah可见,这里面包含了所有git操作需要的东西
$git status 可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交的文件
$git log 查看版本库的提交历史
$git reflog 查看所有分支的所有操作记录
$git add <path> 将指定路径的文件或目录添加到暂存区
$git add -A 把工作区的所有变化提交到暂存区
$git commit -m "message" 仅将暂存区的文件提交到版本库的当前分支中
$git commit -a -m "message" 可以提交跟踪过的文件到版本库的当前分支中
$git reset --mixed <commit id> 回退到某个版本,只保留工作区的源码,同时回退版本库和暂存区中的信息(默认)
$git reset --soft <commit id> 回退到某个版本,只回退版本库中的信息,不会影响到暂存区和工作区
$git reset --hard <commit id> 回退到某个版本,工作区的源码也会变为这个版本的内容
$git reset <commit id> <path> 将某个文件在指定节点的版本加到暂存区中
<commit id>可以使用HEAD、HEAD^、HEAD~n代替,分别表示当前版本,上一版本,以上n个版本
$git checkout <commit id> <path> 将某个文件在指定节点的版本加到暂存区和工作区中
$git revert <commit id> 回退到某个版本,生成一个新版本来撤销之前的所有版本,但它们都会被保留
$git rm <path> 删除工作区的指定文件,再使用git commit提交,删除版本库中的文件
$git branch <branch name> 创建一个新的分支
$git checkout <branch name> 切换到另一个分支
$git checkout -b <branch name> 创建并切换分支
$git merge <branch name> 合并某分支到当前分支
$git branch -d <branch name> 删除分支
$git clone [-o <自定义远程主机名>] <远程版本库的地址> [<自定义本地目录名>] 从远程主机克隆一个版本库,该命令会在本地主机
生成一个目录,与远程主机的版本库同名
$git remote 列出所有远程主机
$git remote show <远程主机名> 查看该主机的详细信息
$git remote add <远程主机名> <地址> 用于添加远程主机
$git remote rm <远程主机名> 用于删除远程主机
$git remote rename <原主机名> <新主机名> 用于重命名远程主机
$git fetch <远程主机名> [<远程分支名>] 将某个远程主机的更新,全部取回本地,如果指定了分支名,则只取回该分支的更新。所取
回的更新,在本地主机上要用"远程主机名/分支名"的形式读取,使用git branch -a 可以查看包括远程分支在内的所有的分支
$git pull <远程主机名> <远程分支名>:<本地分支名> 取回远程主机某个分支的更新,再与本地的指定分支合并,这等同于先做
git fetch,再做git merge操作
$git push <远程主机名> <本地分支名>:<远程分支名> 用于将本地分支的更新,推送到远程主机

常用的git命令