这是发生的情况(我想这就是我的问题的出现方式,但不是 100% 确定):
revert按钮恢复了它merge按钮)为什么会发生这样的事?现在怎么可能,从进行 PR 的分叉中,它说There isn't anything to compare虽然这些提交不在远程存储库的原始分支上。
最后,我怎样才能恢复这些提交?
编辑:根据要求,这是我的有趣部分git log:
* | | 25f28fb Merge branch 'FooUser-develop' into develop
|\ \ \
| * \ \ 73768b7 Merge branch 'develop' of https://github.com/FooUser/mainRepo into FooUser-develop
| |\ \ \
| | * | | 2e61235 Invert adresses
* | | | | d522031 Merge branch 'develop' of https://github.com/mainUser/mainRepo into develop …Run Code Online (Sandbox Code Playgroud) 我正在开发一个项目(主项目),该项目有大约 100 次提交,没有分支等。
我想看看该项目在提交 1、然后在提交 10、20、30 时是什么样子。
如何查看早期提交而不丢失任何数据?
在我从之前的提交中看到它之后,我想回到现在的位置。
怎么做?我认为恢复更持久,我应该寻找其他东西吗?
我正在使用 Composer 来管理 Drupal 项目中的依赖项。我拥有的一些模块位于 Mercurial 存储库中。一旦我这样做了,composer install我就可以从各自的 Mercurial 存储库下载我的 Drupal 模块。Composer.lock 文件也能正确生成。
现在假设我对其中一个存储库进行了更改。之后,如果我运行composer install,我希望更改得到恢复,以便存储库返回到存储在composer.lock中的修订版本。
但这种情况并没有发生。我所做的改变仍然存在。我错过了什么吗?这是因为我使用了 Mercurial 存储库吗?
在尝试移动到先前的提交时,我执行了“切换/签出”,然后选择了我想要移动到的提交,然后取消选中“创建新分支”选项。
该运动做得很好,但现在我无法返回到最新的提交。幸运的是,我将其保存在 Bitbucket 上,但我想知道是否可以通过本地 git 解决这个问题。
我使用 TortoiseGit
我有以下承诺
\n\ndd9e52bafac5fa427ed64c5d9cf08015fa804ed4 Added Line 3\na000427a4c70781d0bed7b31f56f290ac1d636b7 Added Line 2\n20baa578ae205768639620749f53bd318e329e73 Added Line 1\n7c043a104394ba4ba5a2fb29d4526de50b7d12be Created file.txt\nRun Code Online (Sandbox Code Playgroud)\n\n在提交 dd9e 时,file.txt 现在读取
\n\nLine 1\nLine 2\nLine 3\nRun Code Online (Sandbox Code Playgroud)\n\nHead 和 master 指向最后一次提交(dd9e)。
\n\ngit revert 20baa\nRun Code Online (Sandbox Code Playgroud)\n\n有人告诉我
\n\nerror: could not revert 20baa57... Added Line 1\nhint: after resolving the …Run Code Online (Sandbox Code Playgroud) 我想做这样的事情:
svn revert --recursive mydata/*/*.txt
我希望它还原目录mydata中具有扩展名*.txt的所有文件.有没有办法做到这一点?
我是一个关于git的新手,通常是git commit,pull和push是我唯一的命令.最近注意到我的提交设置为默认名称和电子邮件,并希望更改它.愚蠢地我运行了这个,我在某个帖子找到了:
git filter-branch -f --env-filter "GIT_AUTHOR_NAME='Newname'; GIT_AUTHOR_EMAIL='newemail';
GIT_COMMITER_NAME='Newname'; GIT_COMMITTER_EMAIL='newemail';" HEAD
Run Code Online (Sandbox Code Playgroud)
我认为这只会改变我的提交,但它会更改回购邮件中的所有提交以获取我的姓名和电子邮件.当然要继续我的"愚蠢",我推动了变化.
此外,我似乎已经失去了历史记录,github上的所有提交似乎也有重复的条目.一个用我的名字和电子邮件和原始的.
有办法还原这个吗?也许使用前一个拉的副本来推送原始信息?
我有一个用于Windows开发的PC和用于Android开发的Linux机器.我们的源代码控制是Subversion,我在Windows上使用TortoiseSVN,在Linux上使用Eclipse中的Subclipse插件.
有时我会编辑一个文件进行一些实验,但我不想保留更改.在Subclipse中,我所要做的就是"从最新的存储库替换",使其与最新提交的代码一致.
在TortoiseSVN中,这相当于什么?是否有一个简单的一步方法用存储库中的当前最新版本替换我的本地文件?
NB我不想做"更新",因为根据将在其他人的更改中合并的文档.我想要一个完整的替代品.
提前致谢.
我需要将一堆文件(大约40-50)还原到特定的提交.但是,我不想还原所有文件.如果不为每个需要还原的文件执行每个文件签出,我该怎么做?我需要还原的所有文件都位于一个文件夹下.
我做了一个提交和一个标签(使用git tag -a -m).在我推动之前我发现我需要恢复提交,所以我使用了git revert --soft HEAD~.我如何删除标签?我已经检查过git push --tags --dry-run它还没有被推,所以我希望它可以删除.
revert ×10
git ×7
svn ×2
commit ×1
composer-php ×1
drupal ×1
eclipse ×1
file ×1
git-merge ×1
git-revert ×1
github ×1
mercurial ×1
pull-request ×1
tags ×1
tortoisegit ×1
tortoisesvn ×1
undo ×1