【问题标题】:Google App Engine: appcfg.py rollbackGoogle App Engine:appcfg.py 回滚
【发布时间】:2011-03-14 00:13:42
【问题描述】:

我使用的是 Windows 7,我一生都无法弄清楚如何在 appcfg.py 上调用回滚函数。我只想知道在命令提示符中输入什么内容,以便回滚我的应用程序。

【问题讨论】:

  • 您可以在“app.yaml”文件中增加您的应用程序版本号---以防“appcfg.py rollback ”命令不起作用!
  • 使用android studio时appcfg的路径见:appcfg path

标签: google-app-engine rollback


【解决方案1】:

试试这个:appcfg.py rollback <directory>

如果您的应用程序 myapp 位于 C:\Users\Nilesh\Documents\ 中,则目录路径应为 C:\Users\Nilesh\Documents\myapp

如果您在系统中安装了Google App Engine Launcher,那么安装路径应该类似于C:\Program Files\Google\google_appengine

现在打开命令提示符并输入以下内容:

C:\Program Files\Google\google_appengine>appcfg.py rollback C:\Users\Nilesh\Documents\myapp

这将解决您的问题。 :)

【讨论】:

    【解决方案2】:

    回滚命令可以回滚服务器上的事务,但除非您的应用程序的 update 由于某种原因失败,否则您不太可能需要使用它。您应该从 appcfg.py 获得一些反馈,表明需要执行此类操作。那是你想做的吗?如果是这样,只需打开命令提示符并输入appcfg.py rollback

    否则,请告诉我们您要通过执行“回滚”来完成什么。

    【讨论】:

    • 是的,更新失败。错误消息是:此应用程序和主要版本的用户用户的另一笔交易已经在进行中。该用户可以使用 appcfg.py 的“回滚”命令撤消事务。错误代码所指的此“进行中”交易于上周五开始。我认为这可能是因为我在启动时退出了谷歌应用引擎启动器。无论如何,我想部署一个新版本的应用程序,它不会工作。键入“appcfg.py rollback”只会在 Notepad++ 中打开 appcfg.py,而没有做任何其他事情。还有其他建议吗?
    • @petwoip:听起来您的系统没有配置为自动使用 Python 解释器来启动 .py 文件。您应该可以使用“python appcfg.py rollback”运行它
    • 啊,当然!我把我的应用程序的路径放在最后,现在它可以工作了。谢谢!
    【解决方案3】:
    E:\eclipse-jee-indigo-win32\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.6.1.v201201120043r37\appengine-java-sdk-1.6.1\bin>appcfg.cmd rollback E:\AdminApp\Admin\war
    

    用于回滚 Java 应用程序

    【讨论】:

      【解决方案4】:

      试试这个: 这就是我的做法(全部来自命令行),稍微简单一些 方法,达到了同样的效果.....

      C:\Documents and Settings\Amit\My Documents\newproject>"C:\Program Files\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.2.5.v200909021031\appengine-java-sdk-1.2.5\bin\appcfg" 回滚战 正在读取应用程序配置数据... 2009-09-17 20:47:35.859::INFO: 通过 org.mortbay.log.StdErrLog 记录到 STDERR 开始 idebanet 的服务器交互... 0% 回滚更新。 成功。 清理临时文件... C:\Documents and Settings\Amit\My Documents\newproject>

      【讨论】:

      • 这个答案节省了我的应用程序(和时间),谢谢aMit
      【解决方案5】:

      如果您使用 maven 来部署您的应用程序(目标 appengine:update),那么您也可以使用目标 appengine:rollback 运行 maven。它为我解决了这个问题。

      【讨论】:

      • 非常感谢,这比寻找一些愚蠢的python脚本要容易得多。
      【解决方案6】:

      在我这样做之前,我无法让我的工作:

      C:\Program Files (x86)\Google\google_appengine>python appcfg.py rollback "C:\Pro
      gram Files (x86)\Google\google_appengine\mirror-quickstart-python"
      

      我必须在 appcfg.py 之前添加双引号和“python”

      【讨论】:

        【解决方案7】:

        这是我在我的 Linux 机器上执行此操作的方法(经过多次试验和错误):

        cd ~/.eclipse/org.eclipse.platform_3.5.0_155965261/plugins/com.google.appengine.eclipse.sdkbundle_1.5.1.r35v201106211634/appengine-java-sdk-1.5.1/bin
        chmod +x appcfg.sh
        ./appcfg.sh -s appengine.google.com -e [my-email]@gmail.com rollback /home/erelsgl/workspace/ImitatorGWT/war
        

        希望这会有所帮助。

        【讨论】:

          【解决方案8】:

          10,我不久前遇到了这个问题,我已经解决了。

          首先,我使用以下命令移至 bin 目录:

          cd ~/.eclipse/org.eclipse.platform_3.5.0_155965261/plugins/com.google.appengine.eclipse.sdkbundle_1.5.1.r35v201106211634/appengine-java-sdk-1.5.1/bin
          

          然后,我运行回滚命令:

          ./appcfg.sh rollback /home/workspace/vchat/war
          

          我希望这会有所帮助。

          【讨论】:

            【解决方案9】:

            我已经在我的 ubuntu 机器上修复了它:

            cd /home/eclipse/plugins/com.google.appengine.eclipse.sdkbundle_1.6.5/appengine-java-sdk-1.6.5/bin/
            sh ./appcfg.sh -A appId -s appengine.google.com -e youdID@google.com rollback /home/workspace/projectName/war
            

            希望对你有帮助

            【讨论】:

              【解决方案10】:

              对于所有使用 Google App Engine Launcher 进行部署的用户,您可以通过打开命令提示符和python appcfg.py rollback <directory of your application>来解决此问题

              就我而言,我没有设置 Python 环境变量,所以:

              C:\Python25\python C:\Program Files\Google\Google App Engine\appcfg.py rollback C:\eclipse\applicatoin
              

              【讨论】:

                【解决方案11】:

                在 Linux 中通过 appcfg 上传应用程序会在 /tmp 中创建一个暂存目录

                0% 在以下位置创建暂存目录:'/tmp/appcfg8593320566371318406.tmp'

                你也可以在回滚命令中回滚这个目录

                appcfg.sh -A yourAppId -s appengine.google.com rollback /tmp/appcfg8593320566371318406.tmp
                

                【讨论】:

                  【解决方案12】:

                  在我的 Mac 上尝试“appcfg 回滚”时感到非常沮丧,我阅读了 Jaky 的回答,并通过更改版本号在几分钟内解决了问题。

                  如果你使用的是eclipse,只需打开项目中war>WEB-INF下的appengine-web.xml并在此处更改版本号。

                  【讨论】:

                    【解决方案13】:

                    游戏已经很晚了,但我想添加在 Windows XP 中对我有用的东西。在命令提示符下:

                    C:\Python27>python C:\Progra~1\Google\google_appengine\appcfg.py rollback C:\Docume~1\myname\MyDocu~1\Projects\myproject\
                    

                    Python 2.7 和 Windows 路径中的短名称是关键。

                    【讨论】:

                      【解决方案14】:

                      我正在使用带有 GAE-Java 的 64 位 Windows7 在命令提示符下键入所有这些细节可能会令人沮丧。我的解决方案:创建一个批处理文件。

                      1. 我创建了一个名为“rollback.bat”的批处理文件并将其保存在我的 WORKSPACE 目录中。内容如下:

                        cd C:\Users\Organize4Joy\My Code\EclipseWORKSPACE\eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.8.3\appengine-java-sdk-1.8.3\bin\appcfg.cmd rollback C:\Users\Organize4Joy\EclipseWORKSPACE\iTreewareMAIN\war
                        
                      2. 只需键入“回滚”即可运行批处理文件 此本地实用程序更改目录,运行 appcfg 回滚 EXE 并将其指向我的 war 目录。

                      更好的是建立一个通用实用程序(bin)目录并将其添加到我的路径变量中。这样我就可以在任何地方运行这个实用程序。

                      【讨论】:

                        【解决方案15】:
                        1. 遍历appcfg.py所在的路径

                        2. 运行命令python appcfg.py rollback(项目文件夹的目录)

                        【讨论】:

                          【解决方案16】:
                          • 打开文件
                          • 将自己放在包含 appcfg.cmd(GAE SDK 的 bin)的文件夹中
                          • 如果您的应用程序 myapp 位于 C:\Users\Nilesh\Documents\,则目录路径应为 C:\Users\Nilesh\Documents\myapp\war

                          • 现在打开命令提示符并输入以下内容:

                            appcfg.cmd 回滚 C:\Users\Nilesh\Documents\myapp\war

                          注意不要忘记在应用文件夹的末尾添加“战争”

                          • 然后输入您的电子邮件和密码

                          【讨论】:

                            【解决方案17】:

                            这个问题已经回答了很多次,但我也遇到了问题。如果您正在运行 Java 并且也遇到问题,或者如果您设置了 Google 的 2 因素身份验证 并且这给您带来了问题,那么这是我用来使其成功的步骤:

                            1) 确保您的环境变量路径中有 Google App Engine。 IE:C:\Users\yourUserName\Desktop\Eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.9.18\appengine-java-sdk-1.9.18\bin

                            2) 以管理员身份打开命令窗口!不要直接输入cmd回车,需要输入cmd,右键,以管理员身份打开

                            3) 首先,CD 到其中包含 WAR 文件的文件夹。就我而言,那是: cd "C:\Users\yourUserName\Documents\MyWorkspace\Project1" 这是包含 src、.settings 和 war 文件夹的同一文件夹。

                            4)在cmd窗口中输入:“appcfg rollback war”并回车。

                            5) 它将要求您提供 Google 凭据。如果您没有 2 因素身份验证设置,只需输入它们并按 Enter 即可设置。

                            6) 如果您确实设置了 2 因素身份验证,请转到您的 google 帐户页面(“google 帐户”只需要 google),它将是第一个或第二个。 接下来,在“登录”类别下,转到应用密码。 接下来,转到底部并在选择应用程序下拉菜单下,选择其他并输入任何内容(IE:GAE 回滚) 它会给你一个密码(16位随机数)。 最后,在命令窗口中输入您的电子邮件地址,然后将这个新的 16 位临时密码输入/粘贴到密码部分。

                            7)利润!

                            -Sil

                            【讨论】:

                              【解决方案18】:

                              在我的情况下,我必须使用 --no_cookies,没有它,我就没有执行操作的权限。

                              C:\Users\user_name.gradle\appengine-sdk\appengine-java-sdk-1.9.30\bin\appcfg --no_cookies --application=app_name --version=1 回滚 C:\projects\android\ app\backend\build\exploded-app

                              【讨论】:

                                【解决方案19】:

                                我对每个人都在这里谈论的这些编码东西了解不多..但我找到了一种更新应用程序的简单方法..

                                1. 选择您的应用程序并点击“编辑”。
                                2. 应打开一个包含应用程序详细信息的写字板文件。
                                3. 应用程序下方有版本:1
                                4. 只需将版本更改为版本:2 而不是 1,然后点击“保存”。
                                5. 所以,不是更新同一个版本..您正在部署一个新版本..
                                6. 点击“部署”。
                                7. 立即检查您的申请!

                                【讨论】:

                                  猜你喜欢
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2017-06-12
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  相关资源
                                  最近更新 更多