Git常用命令
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。在团队开发中git是必不可少的
文件操作
# 查看指定文件状态
git status [filename]
# 查看所有文件状态
git status
# 添加单个文件到暂存区
git add [filename]
# 添加所有文件到暂存区
git add .
# 如果暂存区有文件,则将其中的文件提交到仓库
git commit
# 带注释提交,说明你增加或修改的内容
git commit -m 'your comments'
# 查看版本库中所有的改动
git diff
# 查看具体文件的改动
git diff Readme.md
# 显示所有提交的历史记录
git log
# 单行显示提交历史记录的内容
git log --pretty=oneline
# 回退到上一个提交版本
git reset --hard HEAD^
# 回退到上上一个提交版本
git reset --hard HEAD^^
# 回退到未来的某个版本
git reflog
# 会退到 commit_id 指定的提交版本
git reset --hard 'commit_id'
# 如果指定文件在工作区,则丢弃其修改
git checkout -- [filename]
# 丢弃当前目录下所有工作区中文件的修改
git checkout -- .
# 删除已经被提交过的文件
git rm [filename]
分支操作
# 查看本地分支信息
git branch
# 查看相对详细的本地分支信息
git branch -v
# 查看包括远程仓库在内的分支信息
git branch -av
# 新建一个名称为 dev 的分支
git branch dev
# 新建完 dev 分支以后,通过该命令切换到 dev 分支
git checkout dev
# 新建 dev 分支,并切换到该分支上
git checkout -b dev
# 切换回 master 分支
git checkout master
# 合并指定分支到当前分支
git merge [branch]
# 删除 dev 分支
git branch -d dev
远程仓库
# git clone 后面的仓库地址,可以支持多种协议,如 https, ssh 等。
git clone https://github.com/git/git.git
# 为本地仓库添加远程仓库
git remote add origin your_remote_git_repo
# 第一次推送时使用,可以简化后面的推送或者拉取命令使用
git push -u origin master
# 将本地 master 分支推送到 origin 远程分支
git push origin master
# 拉取远程仓库内容,但不会自动合并
git fetch origin master
# 拉取远程仓库内容,自动合并
git pull origin master
# 查看远程仓库信息
git remote [-v]
# 建立本地分支和远程分支的关联
git branch --set-upstream 'local_branch' origin/remote_branch
# 修改本地仓库对应的远程仓库地址
git remote set-url origin [url]
标签管理
# 创建标签
git tag -a 'tagname' -m 'comment' 'commit_id'
# 查看本地仓库中的所有标签
git tag
# 查看具体标签信息
git show tagname
# 删除本地标签
git tag -d tagname
# 推送标签到远程仓库
git push origin tagname
# 推送所有标签到远程仓库
git push origin --tags
# 删除远程标签
git push origin --delete tagname