Git:轻松恢复已删除远程分支

admin 技术 2023-10-24 20:57 199

我需要恢复两个Git分支,我不知何故删除在推。这两个分支在不同的系统上创建,然后推送到我的“共享”(github)存储库。

在我的系统上,我(显然)在提取期间检索分支:

~/myfolder> git fetchremote: Counting objects: 105, done.remote: Compressing objects: 100% (58/58), done.remote: Total 62 (delta 29), reused 0 (delta 0)Unpacking objects: 100% (62/62), done.From github.com:mygiturl * [new branch] contact_page -> origin/contact_page 731d1bb..e8b68cc homepage -> origin/homepage * [new branch] new_pictures -> origin/new_pictures

之后,我做了一个推送发送我的本地更改到中央仓库。由于某些原因,这些分支从我的本地系统和中央仓库删除:

~/myfolder> git pushCounting objects: 71, done.Delta compression using up to 2 threads.Compressing objects: 100% (43/43), done.Writing objects: 100% (49/49), 4.99 KiB, done.Total 49 (delta 33), reused 0 (delta 0)To git@github.com:mygiturl.git - [deleted] contact_page + e8b68cc...731d1bb homepage -> homepage (forced update) bb7e9f2..e0d061c master -> master - [deleted] new_pictures e38ac2e..bb7e9f2 origin/HEAD -> origin/HEAD 731d1bb..e8b68cc origin/homepage -> origin/homepage e38ac2e..bb7e9f2 origin/master -> origin/master * [new branch] origin/contact_page -> origin/contact_page * [new branch] origin/new_pictures -> origin/new_pictures

从出生地机器分支出来是不容易的,所以我想尝试从我的本地恢复,如果可能的话。

所有的git“撤消”信息我已经google了恢复丢失的提交。我不认为这里适用,因为我没有提交UID这些分支。

我想知道如何让这些回来。我也想知道它们是如何被删除的第一,我如何可以避免这在未来。

我不是一个专家。但你可以试试

git fsck --full --no-reflogs | grep commit

找到删除的分支的HEAD提交并让他们回来。

最后,附上我的repo配置

user.name=Craig Walkeruser.email=github@softcraft.caalias.unadd=reset HEADcore.repositoryformatversion=0core.filemode=truecore.bare=falsecore.logallrefupdates=truecore.ignorecase=trueremote.origin.fetch=+refs/heads/*:refs/remotes/origin/*remote.origin.url=git@github.com:MyGitURL.gitremote.origin.mirror=truebranch.master.remote=originbranch.master.merge=refs/heads/masteralias.undo=reset --hardalias.test=push -f ci HEAD:masteralias.st=statusalias.ci=commitalias.br=branchalias.co=checkoutalias.ch=checkoutalias.df=diffalias.lg=log -palias.who=shortlog -s --remote.ci.url=ContinuousIntegrationGitURLremote.ci.fetch=+refs/heads/*:refs/remotes/ci/*branch.photo.remote=originbranch.photo.merge=refs/heads/photosremote.foo.url=FooGitURLremote.foo.fetch=+refs/heads/*:refs/remotes/cynthia/*branch.homepage.remote=originbranch.homepage.merge=refs/heads/homepage

Git基础文章

Git命令简化笔记--再也不担心找不到通用教程了

Git进阶:如何提交标准化的Git Commit Message

最后分享最近在读的书,送给面试找工作和想提升的你一起学习

相关推荐
关闭

用微信“扫一扫”