远程备份仓库创建
需求描述:在github上有一个仓库名为testA,在本地开发的一些分支不能作为正式提交推送到testA,需要提交到另一个远程,作为备份仓库testB
步骤方法:
- 将testA仓库git clone到本地。
git clone <testA url>
- 本地创建一个新分支branch_test
git branch branch_test
- 在gitee/github/gitlab上创建空仓库testB,本地工作区添加远程仓库testB
git remote add origin_B <testB_url>
- 查看git配置列表,已经有origin和origin_B两个远程仓库
git config --list
- 接下来就可以选择性将分支推送/拉取到远程仓库testB/testA
git pull origin branch_test:branch_test #拉取更新
git push origin branch_test:branch_test
git push origin_B branch_test #推送分支
git push origin_B branch_test:branch_test #推送更新
git pull origin_B branch_test:branch_test
更改远程仓库名称
git remote rename <origin_name> <new_name>
应用某个分支更改
如A分支上有某个更改提交,id为xxx,若想在B分支上应用该commit
git checkout B
git cherry-pick xxx
若想在B分支上应用A分支上从commit xxx 到 commit yyy 的所有提交
git cherry-pick xxx^..yyy #包含xxx
git cherry-pick xxx..yyy #不包含xxx
xxx^ 表示xxx的前一个commit
本地的commit被意外重置
查看 reflog 记录
git reflog
在输出中找到想要恢复的commit的哈希值
git reset --hard <commit-hash>
即可恢复本地意外重置的commit