Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 恢复到git、build中的特定提交,然后恢复到最新更改_Iphone_Xcode_Git - Fatal编程技术网

Iphone 恢复到git、build中的特定提交,然后恢复到最新更改

Iphone 恢复到git、build中的特定提交,然后恢复到最新更改,iphone,xcode,git,Iphone,Xcode,Git,在git中恢复到提交时出现了一些问题,但我想确定一下。本SO页面是帮助最大的页面之一: 我有一个以前的承诺,比如说客户的1.0,它已经完成了。我提交(不确定是否推送),然后创建一个新分支来处理下一个版本。现在,出于某种原因,1.0的二进制文件已经“损坏”,我需要返回,但也要保留当前的修改 git日志揭示了这一点: commit be01d2a99ec35bbfcdbca47d5570acef8c69b275 Author: Yko <xxxxxxxxx@gmail.com> Dat

在git中恢复到提交时出现了一些问题,但我想确定一下。本SO页面是帮助最大的页面之一:

我有一个以前的承诺,比如说客户的1.0,它已经完成了。我提交(不确定是否推送),然后创建一个新分支来处理下一个版本。现在,出于某种原因,1.0的二进制文件已经“损坏”,我需要返回,但也要保留当前的修改

git日志揭示了这一点:

commit be01d2a99ec35bbfcdbca47d5570acef8c69b275
Author: Yko <xxxxxxxxx@gmail.com>
Date:   Mon Apr 25 10:25:35 2011 -0400
我假设步骤3修改了所有的源代码?这是一个XCode项目(iPhone应用程序),所以我只需要重新加载项目文件、构建并使用新的binary.app

然后,返回到最新版本1.1

git checkout "latest commit #"?
谢谢

我是新来的,不想失去任何工作。感谢你的帮助

编辑:根据一些答案,我想澄清一下。 1.我不想合并任何分支。我想回到1.0版本,重新构建源代码,创建一个新的二进制文件,然后跳回到原来的位置。假设Veriversion 1.0的苹果售价为$1.00,版本1.10的苹果售价为$1.10。我想回到1.0版,重新构建苹果售价为1.00美元的源代码,将二进制代码提供给客户x。然后,跳回到1.10版,继续工作


再次感谢

您的步骤很好,这样做不会损失任何工作量。如果您的停车点不是很好,您可能希望签出该命令以避免执行步骤2。

您可以这样做:

git tag 1.0
git add .
git commit -m "good stopping point for v1.1"
git tag 1.1
git checkout 1.0
.. do your build stuff/whatever
git checkout 1.1

如何“返回但保留当前修改”?这与仅仅使用1.1版有什么不同?1.1版有新的内容。我想回到1.0构建二进制文件,然后改回1.1。好啊我会举一个例子。假设1.0的苹果价格是1美元,那么1.1是1.10美元。1.1尚未准备好公开,但1.0版本的二进制文件已损坏…当您在存储库中执行“git branch”时,输出是什么?当您想返回1.1代码时,只需执行“git checkout”。如果您是git新手,本教程将帮助您更好地了解git的工作原理。如果存储库中没有标记,可以使用分支名称。
git tag 1.0
git add .
git commit -m "good stopping point for v1.1"
git tag 1.1
git checkout 1.0
.. do your build stuff/whatever
git checkout 1.1