- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
错误地我做了一个提交,现在我想从历史日志中删除并返回到以前的提交。我一直在尝试检查我想返回的提交,但是 Smartgit 要求我创建一个本地分支以便执行此操作(附上屏幕截图),并且由于我不是 SG 专家,所以我真的需要一些建议。我也尝试恢复错误的提交,但我仍然在日志中看到提交。这是日志现在的样子:
尝试 checkout 时:
我的日志目前看起来如何:
我想做的是从日志中删除前两个提交并返回到“Cambios Varios”提交(顺便说一句,当我试图检查该提交时出现的带有绿色箭头的那个)。
所有这些困惑是因为我的同事做了一些更改并添加了一个文件,然后提交了他的更改,为了更新我的文件,我进行了 pull ,但我的文件没有在我的本地存储库中更新,也没有添加我的同事添加的文件。当另一个用户除了 PULL 之外进行提交时,我还需要做些什么来更新我的所有文件夹吗?我是 SmartGit 的新手,每次我尝试做一个干净的 pull 时都会有点困惑。非常感谢!
最佳答案
你问的不是 SmartGit 特有的,而是一般的 GIT。 SmartGit 只是一个客户端,虽然非常方便且功能齐全。在您的情况下,您必须考虑几个 GIT 功能:
谷歌这些以获得更多信息。现在,让我们为您的提交命名:
您继续看到提交 A
,因为您有一个分支 指向它。这是您的本地 分支master
。您可以重置此分支为您喜欢的任何提交。要在 SmartGit 中执行此操作,只需单击该绿色分支标签并将其拖动到任何其他提交。就是这样。例如。将其重置为 B
提交,origin/master
指向的位置,您将不会再在日志中看到此提交,因为没有可以从中创建的分支达到。
严格来说,您可以对您的 origin/master
分支执行相同的操作,您可以将其重置为任何其他提交。但是你应该非常小心地使用它,因为它指向一个提交 B
,它是 published。 IE。任何人都可能把它 pull 到他们的机器上。如果你不能确定,你就不能从已发布的提交中重置分支而不会有破坏某人的 repo 副本的危险。
所以简单的答案是您不能将 repo 恢复到您想要的提交 C
,因为它可能与在其他机器上克隆的 repo 冲突。较长的答案是您可以尝试。
如果您确定只有您和您的同事克隆了此存储库,您可以重写 远程日志。为此,在提交 C
时重置您的本地 master
分支(如我之前所说,使用拖放)并推送它。 SmartGit 可能会禁止您这样做,转到 Preferences/Commands/Push 并启用选项“Allow modifying pushed commits”。因为它很危险。
这将重写远程 master
分支的位置,从你同事的机器上 pull 它。如果他没有对这个分支做任何额外的更改,这应该没问题。
关于git - smartgit 删除提交并返回上一个提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32394214/
SmartGit 以双窗口模式显示文件更改。如何在单窗口模式下设置它,如 Git Extensions 或 SourceTree?谢谢。 更新:我已经使用 SmartGit 一段时间了,发现双窗口模式
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
如何使用 smartgit 恢复对先前修订的更改? 我在那里找不到选项 最佳答案 我想你想回到过去的提交之一。 单击窗口右侧的“日志”,然后选择要返回的提交并选择“ checkout ”。现在已 ch
我想在 SmartGit 中暂存一行,而不是整个差异块。 例如: old line new line but leave unstaged new line, just stage this new
在 SmartGit(在 Windows 上)中删除未跟踪的文件时,您必须选择实际删除或“移至垃圾箱”。当我不能 100% 确定要删除某些内容时,我经常使用“移至垃圾箱”。我只是做了“将东西移到垃圾桶
我有一个运行一些测试的预提交钩子(Hook)。在测试开始依赖环境变量之前,这曾经很有效。有没有办法在 SmartGit 中设置这些环境变量,以便完成预提交测试? 最佳答案 两种选择: 1) 将变量添加
如何将文件重置为 SmartGit 中的指定提交?例如,我创建了一个提交,发现一个文件被错误地更改了,我只想恢复那个文件。 最佳答案 打开 日志 , 导航到要从中恢复文件的提交,在 中选择文件文件 查
我需要使用非商业版本6.0.7安装smartgit的解决方案。它要求许可证 key 以执行进一步的步骤。你能帮我在 Linux 上安装 git 最佳答案 Windows 用户只需删除位于 C:\Use
我必须将 SmartGit 安装到新设备 (Win11),不知何故,这个特定的客户端总是在启动时启动日志窗口,而不是我在其他设备上习惯的工作树窗口。这让我发疯。我只是找不到更改此行为的设置。 我认为在
我正在SmartGit中寻找一种方法来选择多个提交中的所有文件。本质上,我需要提交在提交A和提交C之间已更改的每个文件的列表,包括提交B中的文件。我也在寻找一种方法来复制每个已更改文件的相对文件路径,
最近,我注意到我提交了两张票号错误的票,现在必须更正它们。我是smartgit的新手,因此对此了解不多。 最佳答案 对于最后一次提交,可以使用 Local | Edit Last Commit Mes
我是 Smartgit 用户,我不明白“分支”窗口中向右的小箭头是什么意思。它们指向分支,但仅指向其中的一部分。 我附上截图。我指的箭头用红色圈起来。 谢谢。 Smartgit 用户界面截图: 最佳答
我的 SmartGit 分支窗口中有一个红色和绿色的复选框。有没有关于这意味着什么的文件? 最佳答案 中的复选框颜色分支机构 View 对应于 中的线条颜色图 .这是默认颜色 . Graph 的选项菜
我试图让 smartgit 在 Ubuntu 上运行,但我不断收到此错误: Disabling SSE42Intrinsics to work around bug 6875866. An incom
本质上,我正在寻找的是一种将每个功能分支视为单独存储库的方法,如下示例工作流程所示: 1) 如果我的事件分支是功能 A,并且我修改了“foo.cpp”并想 check out 功能 B,我希望 Sma
我正在寻找一种通过smartgit UI使用git blame的方法。 它可用吗?还是我在寻找缺少的功能? 更新: 与SmartGitHg4 http://www.syntevo.com/smartg
我正在为我的项目使用 bitbucket,并使用 SmartGit 17.0.4 pull 和 pull 到我的存储库。每次它要求输入用户名和密码。我搜索了它,但没有得到任何解决方案。有谁知道? 这是
我在 Windows 7 下使用 SmartGit 来处理一个巨大的 GIT 存储库(约 400 个分支、约 12000 个标签、约 25000 个提交)并在其上打开日志窗口大约需要 15 秒。打开时
我使用的是 ubuntu 12.04。我已经通过 ppa 为 git 安装了一个 gui 客户端 smartgit,smartgit 图标甚至出现在 dash home 中。 但是在单击该图标时,程序
我有存储在 stash 中的本地更改。我现在(之后)创建了一个新分支,并想将我的更改从 stash 推送到这个分支。 SmartGit:本地 > 应用存储。 当我尝试 SmartGit 时问我:Res
我是一名优秀的程序员,十分优秀!