常用git命令

来源:互联网 发布:淘宝买家v3会员是几钻 编辑:程序博客网 时间:2024/06/06 12:22
基本操作


新增代码至unstage
git add <file_name>


取消加入到unstage中文件
git reset HEAD <file_name>


重新从git仓库取出历史版本并更新本地代码(不影响unstage区中的文件)
git checkout -- <file_name>


提交代码
git commit 
--amend 叠加最近一次提交
-am 新增并提交


取出某个历史版本 
git reset --hard commit-id


对某一个历史版本撤消操作,并提交此次操作
git revert  commit-id
如果在merge的commit-id上进行此操作,-m 1 将使用主干的上一个版本,--m 2 将使用分支的版本


日志查看 

git log [file-name]

-p 显示文件差异

--graph --oneline --decorate 显示当前分支的所有日志(一直向上追溯父级分支的记录)
--graph --oneline --decorate b1..b2 显示在b2分支,但不包括在b1和b2公有的历史记录的commit_id(即:仅显示b2分支的记录)
--graph --decorate --oneline --all 以树型图状查看所有分支日志
git log --graph --oneline --decorate master..test
显示: d

master => a->b -> c  

 test        |--  d


git log --graph --oneline --decorate test..master
显示: c


分支操作


创建分支
git branch <branch_name>


创建并切换分支
git checkout -b <branch_name>


删除分支
git branch -d <branch_name>
git branch <branch_name> -D


合并分支 -- 将<branch_name> 合并入当前分支
git merge <branch_name> 
--no-ff 生成分支合并commit_id,禁用fast-forward

查看分支
git branch
-a  查看远程和本地的所有分支
-v  查看分支及其的最后一次commit_id
--merged 查看已经合并入当前分支的分支
--no-merged 查看未合入当前分支的分支

创建并跟踪远程分支
git checkout -t origin/<branch_name>


删除远程分支
git push origin --delete <branch_name>


拉取远端分支 -- 拉取并合并入至本地分支中
git pull origin <branch_name>


推送本地分支
git push origin <branch_name>


分支rebase  -- 将当前分支rebase至<branch_name>中
git rebase <branch_name>


快速合并分支 -- 将<branch_name>合并入当前分支
git merge <branch_name>


分支rebase --onto A B C
取出C分支,找出处于C分支和B分支的共同祖先之后的修改,然后把它们在A分支上重放一遍


 
注:不要对在你的仓库外有副本的分支执行rebase




标签操作


列出标签
git tag


创建附注标签
git tag -a 'v1.0' -m 'v1.0' <commit-id>


显示标签信息
git show <tag_name>


推送所有标签
git push origin --tags


推送指定标签
git push origin v1.0


检出标签到分支
git checkout -b <branch_name> <tag_name>


删除标签
git tag -d <tag_name>


删除远端标签:
git push origin --delete tag <tag_name>
git push origin :<tag_name>










































原创粉丝点击