git操作进阶命令
存储
- 当在一个分支中向暂存区添加内容,切换到另一个分支时,提交commit会带上另一分支中的暂存内容。可通过存储将暂存内容存在当前分支里。
- 存储暂存区及工作目录修改文件(仅限于已追踪的文件)
git stash
git stash -u
git stash list
git stash apply <stashName>
git stash apply <stashName> --index
git stash drop <stashName>
rebase变基
- 将一个分支的内容都移至另一个分支上
- 首先找到两个分支的共同祖先
- 然后对比当前分支与祖先的历次提交,进行提取相应修改,并保存为临时文件,将当前分支指向目标基底,最后将之前存为临时文件的修改依序应用
- 采用git rebase合并分支
- 首先将在待合并分支上将待合并分支应用于合并分支
git rebase 主分支
git checkout 主分支
git merge 待合并分支
merge注重结果,rebase注重过程
tag标签
- 使用标签的方式,进行版本标注
- 在最新的commit提交上打tag
git tag v1.0
git tag v0.1 哈希
git tag -a v0.1 -m "描述信息" 哈希
git tag
- 删除tag
- git tag -d v1.0
- 查看tag描述
git show 版本号
远程操作
git remote add origin 地址
git push -u origin master
git push origin :分支名 或 git push origin --delete [远程分支名称]
git push origin v1.0
git push origin --tags
git push origin :refs/tags/v1.0 或 git push origin --delete [标签名]
git remote show origin
git clone 地址
git checkout -b branch1 origin/branch1
git pull origin [远程分支名称]:[本地分支名称]
git branch -r
- 建立本地分支到远端仓库分支的链接(后续推送直接git push即可)
git push --set-upstream origin 分支
git branch --set-upstream-to=origin/[远程分支名称] [本地分支名称]
ssh密钥
sh-keygen -t rsa -C "远程邮箱账号"
- 设置SSH
- 在github/gitee/gitlab上找到settings,设置SSH
- 将生成的文件填到对应的位置(生成的信息给到仓库的管理者)
ssh-add 私钥路径
|