首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何将本地未推送的提交从损坏的git存储库移动到另一个存储库?

将本地未推送的提交从损坏的git存储库移动到另一个存储库的步骤如下:

  1. 首先,创建一个新的干净的git存储库,用于接收未推送的提交。可以使用以下命令在本地创建一个新的git存储库:
  2. 首先,创建一个新的干净的git存储库,用于接收未推送的提交。可以使用以下命令在本地创建一个新的git存储库:
  3. 进入原始损坏的git存储库的目录,并使用以下命令将其设置为远程仓库:
  4. 进入原始损坏的git存储库的目录,并使用以下命令将其设置为远程仓库:
  5. 使用以下命令将原始存储库的所有分支和提交拉取到本地:
  6. 使用以下命令将原始存储库的所有分支和提交拉取到本地:
  7. 确定原始存储库中未推送的提交的范围。可以使用以下命令查看未推送的提交:
  8. 确定原始存储库中未推送的提交的范围。可以使用以下命令查看未推送的提交:
  9. 使用以下命令将未推送的提交移动到新的存储库:
  10. 使用以下命令将未推送的提交移动到新的存储库:
  11. 重复此步骤,将所有未推送的提交都移动到新的存储库。
  12. 最后,将新的存储库推送到远程仓库:
  13. 最后,将新的存储库推送到远程仓库:

这样,未推送的提交就成功地从损坏的git存储库移动到了新的存储库。

对于这个问题,腾讯云提供了一系列与Git相关的产品和服务,如代码托管、代码审核、代码扫描等。您可以访问腾讯云的代码托管产品页面(https://cloud.tencent.com/product/coderepo)了解更多信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何将Git存储备份到腾讯云COS

Ubuntu安装了Git并准备在其默认存储中使用,但此版本可能比最新版本旧。 我们可以使用apt包管理工具来更新本地包索引,下载并安装最新Git版本。...repos clonefilename是指我们将提供给本地克隆存储文件名,在本例中我们称之为 demoprojectlocal.git 然后,在脚本末尾命令中直接调用这些变量。...该脚本最后一行使用git命令开始Git命令行客户端。从那里,我们要求clone使用--mirror标记克隆存储,并将其作为存储镜像版本执行。这意味着克隆存储将与原始存储完全相同。...此时,如果列出当前目录中项目,您应该在那里看到备份目录,如果您移动到该目录,您将看到包含您在脚本中提供文件名子文件夹。该子目录是Git存储克隆。...将Git存储备份到对象存储中 安装和配置了所有工具后,我们现在将创建一个脚本,该脚本将压缩本地存储并将其推送到腾讯云 COS。

4.6K30
  • Git使用教程(看完会了也懂了)

    通过使用git push命令将本地版本更改推送到远程仓库,并使用git pull命令远程仓库拉取最新更改,可以与其他开发人员保持同步。...将本地提交推送到远程仓库,更新远程仓库分支和提交历史。 pull:远程仓库拉取最新更改(相当于fetch + merge)。...,就将暂存区打代码提交本地仓库(commit);发现有问题或者更新等需要切换版本时候,就将本地仓库内容回退到工作区(checkout);本地仓库完成提交后,就可以将仓库信息给推送到远程仓库存储起来...>: 这个命令用于取消已经暂存文件,将文件暂存区回到工作目录。...标签 创建标签都只存储本地,不会自动推送到远程。 需要使用git push origin 命令显式地将标签推送到远程仓库。

    1.2K21

    【10】进大厂必须掌握面试题-版本控制面试

    相反,每个开发人员都会“克隆”我在下图中显示资源副本和“本地资源”,并在其硬盘驱动器上具有项目的完整历史记录,以便在服务器发生故障时恢复所需一切。是您队友本地Git存储之一。...在Git中,如何还原已经被推送并公开提交? 这个问题可能有两个答案,因此请确保同时包括这两个原因,因为根据情况,可以使用以下任一选项: 在新提交中删除或修复错误文件,然后将其推送到远程存储。...据我说,您应该首先说git rebase是一个命令,它将把另一个分支合并到您当前正在工作分支中,然后将所有在rebased分支之前本地提交动到该历史顶部科。...您如何设置一个脚本,以便每次存储通过推送接收到新提交时运行?...但是,对于每次推送到目标存储提交,都会调用一次更新挂钩。 最后,在将更新接受到目标存储之后,将调用存储接收后挂钩。

    2.6K30

    【10】进大厂必须掌握面试题-版本控制面试

    相反,每个开发人员都会“克隆”我在下图中显示资源副本和“本地资源”,并在其硬盘驱动器上具有项目的完整历史记录,以便在服务器发生故障时恢复所需一切。是您队友本地Git存储之一。...据我说,您应该首先说git rebase是一个命令,它将把另一个分支合并到您当前正在工作分支中,然后将所有在rebased分支之前本地提交动到该历史顶部科。...您如何设置一个脚本,以便每次存储通过推送接收到新提交时运行?...可以通过三种方式配置脚本,以便每次存储通过推送接收到新提交时都运行该脚本,一种方法是根据确切何时需要触发脚本来定义预接收,更新或后接收钩子。 将提交推送到目标存储中时,将调用预接收钩子。...但是,对于每次推送到目标存储提交,都会调用一次更新挂钩。 最后,在将更新接受到目标存储之后,将调用存储接收后挂钩。

    2.6K20

    离线使用 Git

    按照设计,Git 可以在没有远程存储情况下正常工作。您可以像平常一样分支、暂存和提交文件。...Git 会很乐意将更改本地存储一个副本获取到另一个副本。一种选择是通过 CD 或其他介质将包含本地 Git 存储目录简单地复制到另一台计算机,然后像平常一样在两台计算机上进行更改和提交。...将捆绑文件移动到其他计算机并使用以下命令更新那里更改: git pull /path/to/repoName.bundle 创建本地远程存储 捆绑包解决了在没有网络情况下同步 Git 存储问题...如果新开发人员加入团队,他们会谁那里复制存储?最好选择是选择一台开发机器作为“服务器”。除了开发人员实际工作存储本地克隆之外,还可以在此开发计算机上创建一个裸 Git 存储。...branchName 然后可以在本地存储中进行更改,或者其他开发计算机上创建捆绑包中进行更改。

    21210

    每个程序员必学10个Git命令

    $ git init 3.git克隆 此命令用于现有 URL 获取存储 $ git clone <the url of the repository...该命令有助于添加准备提交到远程存储跟踪文件。使用“git add”命令示例如下。 $ git add myfile 此命令会将 myfile 添加到暂存区。...$ git commit -m “first commit” 7. 推送 ' git push '命令可以帮助将所有修改过本地对象推送到远程存储,然后增长其分支。...要从当前工作目录中删除特定文件并分阶段删除,请使用以下命令: $ git rm 16. git远程 此命令用于将本地 git 存储连接到远程服务器。...结帐 “ git checkout ”命令允许我们切换到现有分支或创建并切换到新分支。为此,您要切换到分支应该存在于您本地系统中,并且在您进行切换之前应该提交或隐藏当前分支中更改。

    45300

    ​2019 DevOps 必备面试题——代码版本控制篇

    相反,每个开发人员“克隆”我在下图中使用“本地存储”显示存储副本,并在其硬盘驱动器上具有项目的完整历史记录,以便在出现服务器中断时,能从你某位队友本地 Git 存储中恢复所需全部内容。...你应该首先说 Git rebase 是一个命令,它将另一个分支合并到当前你正在工作分支中,并将所有位于另一分支之前本地提交,移到该当前工作分支历史记录顶部。...如果 master 创建了一个特性分支,那么 master 已经收到了新提交Git rebase 可用于将特性分支移动到 master 分支顶部。...Q13:每次存储接收到新推送提交时,如何设置某些特定脚本运行?...但是对于已推送到目标存储每个提交,都会调用一次 update 钩子。 最后,在将更新接受到目标存储后,将调用存储 post-receive 钩子。

    2.1K50

    开发工具Tools·Git 入门到精通1

    版本 当你一个项目到本地或创建一个 git 项目,项目目录下会有一个隐藏 .git 子目录。这个目录是 git 用来跟踪管理版本,千万不要手动修改。...工作区是对项目的某个版本独立提取出来内容。 这些 Git 仓库压缩数据中提取出来文件,放在磁盘上供你使用或修改。...本地仓库(local) – 提交更新,找到暂存区域文件,将快照永久性存储Git 本地仓库。 远程仓库(remote) – 以上几个工作区都是在本地。...git stash -k git reset --hard git stash pop git add -A 暂存(Unstaged)内容 我想把暂存内容移动到一个新分支 git checkout...-b my-branch 我想把暂存内容移动到另一个已存在分支 git stash git checkout my-branch git stash pop 我想丢弃本地提交变化(uncommitted

    1.2K30

    Git 入门到精通,这篇包教包会!

    工作区是对项目的某个版本独立提取出来内容。这些 Git 仓库压缩数据中提取出来文件,放在磁盘上供你使用或修改。...本地仓库(local) - 提交更新,找到暂存区域文件,将快照永久性存储Git 本地仓库。 远程仓库(remote) - 以上几个工作区都是在本地。...$ git stash -k $ git reset --hard $ git stash pop $ git add -A 暂存(Unstaged)内容 我想把暂存内容移动到一个新分支 $...git checkout -b my-branch 我想把暂存内容移动到另一个已存在分支 $ git stash $ git checkout my-branch $ git stash pop...如果事实证明你不小心回(move back)了提交(commit), reflog 会包含你不小心回前 master 上指向提交(0254ea7)。

    2.6K20

    Git使用总结

    clone "仓库链接" 将存储库克隆到新目录中 init git init 创建空Git存储或重新初始化现有的Git存储 add git add * 将文件内容添加到索引 mv git mv...“整理”成一条直线,看上去更直观 tag git tag 创建、列出、删除或验证用GPG签名标记对象 fetch git fetch origin 远程分支:本地分支 另一个存储下载对象和引用 pull...git pull 另一个存储本地分支获取并与之集成 push git push origin master 更新远程引用和关联对象 常用命令 git status 查看当前状态 git log...,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程 git remote add origin git@github.com:yourname/yourrepository.git 添加远程仓库...命令git tag 对指定版本打标签 命令git push origin 可以推送一个本地标签;命令git push origin --tags可以推送全部推送本地标签;命令git tag -

    67220

    Git 中文参考(一)

    [1] 显示提交提交和工作树等之间更改 git-fetch[1] 另一个存储下载对象和引用 git-format-patch[1] 准备电子邮件提交补丁 git-gc[1] 清理不必要文件并优化本地存储...] 添加或检查对象注释 git-pull[1] 另一个存储本地分支获取并与其集成 git-push[1] 更新远程引用以及关联对象 git-range-diff[1] 比较两个提交范围...git-http-fetch[1] 通过 HTTP 远程 Git 存储下载 git-http-push[1] 通过 HTTP / DAV 将对象推送另一个存储 git-parse-remote...如果配置远程,或者您不在任何分支上,则默认为origin进行提取,remote.pushDefault进行推送。另外,.(一个句点)是当前本地存储(一个点存储),请参阅下面的branch....当 git gc 与写入存储另一个进程同时运行时,此功能有助于防止损坏;请参阅 git-gc [1] “注意”部分。

    28020

    版本控制简介

    本节介绍版本控制,并说明如何将其应用于您自己项目。我们将引导您完成所有步骤,评估不同版本控制系统到创建和使用一个仓库。 为何使用版本控制?...当您准备好将文件提交存储时,请使用git commit命令。暂存区中文件将永久存储Git目录中。 下面显示了该过程图示概述。...对于增加保护层,你可以将你文件同时存储本地和远程Git仓库。这对于需要在本地桌面计算机上修改文件后将其传输到服务器开发人员来说非常理想。...输入以下命令: git commit -m 'initial project version' 恭喜!您已成功创建了一个Git存储,指定了应跟踪哪些文件,并进行了初始提交。...理想情况下,您将使用版本控制系统为每个环境创建和维护单独仓库。这样,您就可以发出命令将文件从一个环境仓库推送另一个环境仓库。由于不同环境将使用不同数据,您还应该为每个环境创建不同数据

    1.9K30

    如何使用 Git:参考指南

    设置和初始化 使用以下命令检查您 Git 版本,这也将确认安装了 Gitgit --version Git 允许您配置一些将应用于本地计算机上所有存储设置。...检查 Git 存储状态,包括添加暂存文件和暂存文件: git status 要暂存修改后文件,请使用该 add命令,您可以在提交前多次运行该命令。...请注意,某些存储可能会使用 master而不是 main: git merge upstream/main 将您本地分支提交推送或传输到远程存储分支: git push origin main...您可以使用以下命令重置为特定提交,并删除所有更改 : git reset --hard 1fc6665 要将最后一次已知非冲突提交强制推送到原始存储,您需要使用 --force: 警告 :master...git push --force origin main 要从 Git 目录中删除本地跟踪文件和子目录以获得干净工作分支,您可以使用 git clean: git clean -f -d 需要修改你本地仓库

    1.3K30

    Git Pro深入浅出(一)

    缺点:中央服务器发生故障或宕机,谁都无法提交更新,也就无法协同工作;如果中心数据所在磁盘发生损坏,又没有做恰当备份,毫无疑问你将丢失所有数据——包括项目的整个变更历史,只剩下人们在各自机器上保留单独快照...工作目录:是对项目的某个版本独立提取出来内容。这些Git仓库压缩数据中提取出来文件,放在磁盘上供你使用或修改。...轻量标签:很像一个不会改变分支,它只是一个特定提交引用。 $ git tag v1.4-lw 附注标签:是存储Git 数据一个完整对象[推荐方式]。...注意:存在提交文件,Git将会提示,但是会成功切换!所以,在切换分支前请确保当前分支是干净(所有文件已被提交,即将快照存储到数据中)。...)拉取 $ git fetch 服务器上抓取本地没有的数据时,它并不会修改工作目录中内容。

    1K31

    肝了几夜 Git 图解来了

    git commit -m '这里写提交原因' 通过 -m 参数可直接在命令行里输入提交描述文本 git push “将本地代码改动推送到服务器 git push origin daily/0.0.1...git rm b.md 工作区和暂存区移除文件 b.md ,同时添加变动到暂存区,相比用 rm b.md 命令省去了 git add 操作 git rm src/ -r 允许工作区和暂存区移除目录...git branch -r 查看远程版本分支列表,加上 -d 参数可以删除远程版本分支 git branch -D 分支提交本地版本前强制删除分支 git branch -vv...“切换分支 git checkout -b daily/0.0.1 创建 daily/0.0.1 分支,同时切换到这个新创建分支 git checkout HEAD demo.html 本地版本...bisect reset 查到有问题提交ID后回到原分支 更多操作 git submodule “通过 Git 子模块可以跟踪外部版本,它允许在某一版本中再存储另一版本,并且能够保持2个版本完全独立

    27630

    可以说是一门奶奶级Git入门教程了

    git commit -m '这里写提交原因' 通过 -m 参数可直接在命令行里输入提交描述文本 git push “将本地代码改动推送到服务器 git push origin daily/0.0.1...git rm b.md 工作区和暂存区移除文件 b.md ,同时添加变动到暂存区,相比用 rm b.md 命令省去了 git add 操作 git rm src/ -r 允许工作区和暂存区移除目录...git branch -r 查看远程版本分支列表,加上 -d 参数可以删除远程版本分支 git branch -D 分支提交本地版本前强制删除分支 git branch -vv...“切换分支 git checkout -b daily/0.0.1 创建 daily/0.0.1 分支,同时切换到这个新创建分支 git checkout HEAD demo.html 本地版本...bisect reset 查到有问题提交ID后回到原分支 更多操作 git submodule “通过 Git 子模块可以跟踪外部版本,它允许在某一版本中再存储另一版本,并且能够保持2个版本完全独立

    1.7K40
    领券