# 新建远程分支
git checkout -b [xxx] origin/[xxx] // 从指定分支拉去新分支
git checkout -b [xxx] [tag_name] // 从指定tag拉新分支
git push origin [xxx] // 新建远程分支
git branch --set-upstream-to=origin/[xxx] // 跟踪远程分支
#删除远程分支
git branch -r -d origin/[xxx] //删除远程分支
git push origin :[xxx] //将空分支推送到远程
git remote prune origin // 清除远程不存在的分支
# 标签
git tag [tag name] // 创建tag
git push origin [tag name] // 将tag name 推送到远程
git push --tags // 本地全部tag提交到远程
git tag -d [tag name] // 删除本地tag
git push origin :refs/tags/[tag name] // 删除远程tag
#合分支
git merge [xxx] --no-ff //将xxx分支合并到当前分支
git push -f origin last_known_good_commit:branch_name 撤销已提交的代码
git reset HEAD~1 撤销本地commits 记录