Git常用命令
-
仓库
在当前目录新建一个代码仓库 git init 本地仓库关联远程库 git remote add origin [ssh] 将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push git push -u origin master 下载一个项目 git clone [url]
-
配置
显示当前配置 git config --list 编辑Git配置文件 git config -e [--global] 设置提交代码时的用户信息 git config [--global] user.name "[name]" git config [--global] user.email "[email address]"
-
文件工作区域暂存区管理
添加指定文件到暂存区 git add [file1] [file2] ... 添加指定目录到暂存区,包括子目录 git add [dir] 添加当前目录的所有文件到暂存区 git add . 删除工作区文件,并且将这次删除放入暂存区 git rm [file1] [file2] ... 停止追踪指定文件,但该文件会保留在工作区 git rm --cached [file] 改名文件,并且将这个改名放入暂存区 git mv [file-original] [file-renamed]
-
代码提交到本地仓库
提交暂存区到仓库区 git commit -m [message] 提交暂存区的指定文件到仓库区 git commit [file1] [file2] ... -m [message] 提交工作区自上次commit之后的变化,直接到仓库区 git commit -a 提交时显示所有diff信息 git commit -v 使用一次新的commit,替代上一次提交 如果代码没有任何新变化,则用来改写上一次commit的提交信息 git commit --amend -m [message] 重做上一次commit,并包括指定文件的新变化 git commit --amend [file1] [file2] ...
-
分支管理
查看本地分支 git branch 查看远程分支 git branch -r 查看本地和远程分支 git branch -a 创建分支 git branch [branch] 切换指定分支 git checkout [branch] 创建并切入分支 git checkout -b [branch] 将本地分支与远程分支建立追踪关系 git branch --set-upstream-to=origin/[remote-branch] 将本地分支提交到远程 git push origin [branch] 将本地分支提交到远程分支 git push origin [local-branch]:[remote-branch] 拉去远程分支并创建本地分支 git fetch origin [local-branch]:[remote-branch] 删除本地分支 git branch -d [branch] 删除远程分支 git push origin --delete [remote-branch] 合并指定分支到当前分支 git merge [branch]
-
标签
查看所有标签 git tag 在当前commit下新建一个标签 git tag [tag] 新建一个tag在指定commit git tag [tag] [commit] 在当前commit下新建标签,并指定标签信息 git tag -a [tag] -m "emmm..." 推送本地标签 git push origin [tagname] 推送所有本地未推送标签 git push origin --tags 删除一个本地标签 git tag -d [tagname] 删除一个远程标签 git push origin :refs/tags/[tagname]
-
远程同步
下载远程仓库的所有变动 git fetch 显示所有远程仓库 git remote -v 拉取远程仓库的变化 git pull [remote] [branch] 上传 git push [romete] [branch] 强制上传 git push [remote] --force 推送所有分支到远程仓库 git push [remote] --all
-
撤销操作
撤销最后的工作区修改,即回退到最后一次成功的未被撤销的git add 或者git commit操作后的工作区文件变化 git checkout -- [file] git checkout -- . 撤销add操作,并且可以撤销commit操作 git reset head [file] git reset head . 修改提交注释 git commit -amend 撤销commit 1.不删除工作空间改动代码,撤销git commit、撤销git add git reset head [file] git reset head . git reset --mixed HEAD^ 2.不删除工作空间改动代码,撤销commit,不撤销git add git reset --soft HEAD^ 3.删除工作空间改动代码,撤销commit,撤销git add git reset --hard HEAD^