1.回滚到某个commit git reset --hard <commidId> && git clean -f git push -u origin master -f 这组命令的副作用是把<commidId>之后的commit都会删除 2.建立新branch git checkout -b mynewfeature git push -u origin mynewfeature 3.仓库迁移 git clone --bare git://github.com/username/project.git cd project.git git push --mirror git@gitcafe.com/username/newproject.git cd .. rm -rf project.git git clone git@gitcafe.com/username/newproject.git 4.仓库服务搭建 5.checkout remote pull request git fetch origin pull/ID/head:BRANCHNAME git checkout BRANCHNAME 6. merge another reposity to current one git clone <git repository B url> cd<git repository B directory> git remote add repo-A-branch <git repository A directory> git pull repo-A-branch master git remote rmrepo-A-branch reference: http://gbayer.com/development/moving-files-from-one-git-repository-to-another-preserving-history/ 7. 回滚 # Resets index to former commit; replace '56e05fced' with your commit code git reset 56e05fced # Moves pointer back to previous HEAD git reset --soft HEAD@{1} git commit -m "Revert to 56e05fced" # Updates working copy to reflect the new commit git reset --hard (责任编辑:IT) |