繁体   English   中英

如何下载谷歌应用引擎项目的源代码?

[英]How do I download the source code of a google app engine project?

这似乎应该很容易,但我在任何地方都看不到它的链接。

如何下载谷歌应用引擎项目的源代码?

视窗

appengine-java-sdk\bin\appcfg.cmd -A <your_app_id> -V <your_app_version> download_app <output-dir>

Linux

./appengine-java-sdk/bin/appcfg.sh -A <your_app_id> -V <your_app_version> download_app <output-dir>

为了完整起见,使用 Python 实现:

appcfg.py download_app -A $appID -V $appVersionNumber $downloadDirectory --oauth2

--oauth2当然是可选的,您可以省略它并提供您的电子邮件 + 特定于应用程序的密码(或您的密码,然后立即实施两因素身份验证),但它更容易,坦率地说,没有理由不这样做。

文档

App Engine 实际上最近为上传给定应用程序版本的开发人员添加了下载其源代码的功能

恕我直言,今天(2018 年 8 月)的最佳选择是:

在主菜单下的 Products 下,转到 Tools -> Cloud Build -> Build history。

在那里,单击所需构建的 ID(对我来说是最后一个)。

然后,在打开的窗口(构建详细信息)中,单击“源”链接,开始下载您的压缩代码。

就如此容易。

哈。

截至 2019 年 10 月,您只需转到 --> App Engine --> 服务,然后在工具下拉列表中选择“源”,源代码就在那里

使用 Go 使用 App 引擎标准,调试器尚不可用。

我设法下载现有服务的源代码的方法是使用 gcloud 工具。

首先:使用应用引擎控制台或运行: gcloud app versions list获取您的服务的版本 ID

第二:使用版本和服务名称并运行: gcloud app versions describe <versionID> --service=<service name>

describe 参数将为您提供源文件的存储位置,如下所示:

cmd/main.go:
      sha1Sum: e3fe5848c2640eca7ac3591490e1debc2d3a9b09
      sourceUrl: https://storage.googleapis.com/<project>/<file id>

第三:然后您可以使用存储控制台,使用文件 ID,下载您感兴趣的文件。

这个基于java sdk的过程对我有用......

  1. 下载 Google Cloud SDK gcloud init在此处输入图片说明

  2. 使用您的凭据完成登录过程

  3. 从 SDK 输入以下命令

    C:\\Program Files (x86)\\Google\\appengine-java-sdk-1.9.49\\bin

在此处输入图片说明

  1. 输入以下命令下载源代码

    appcfg.sh -A [YOUR_APP_ID] -V [YOUR_APP_VERSION] download_app [OUTPUT_DIR]

    例如: appcfg.sh -A my-project-name-1234 -V 2 download_app C:\\Users\\india\\Desktop\\my project

    注意:此进度基于 java-appengine sdk,因此我们使用appcfg.sh而不是appcfg.py

检查您的应用是否使用与应用引擎中相同的电子邮件 ID 上传。 如果您不确定,则在应用引擎 > 控制 > 清除部署凭据中,然后单击任何项​​目,部署以再次登录,然后使用此

appcfg.py download_app -A {app id from google app engine} -V {1} "{c:\\path}" --oauth2_credential_file=C:\\Users\\{你的账户名}/.appcfg_oauth2_tokens

根据您的需要更改所有 {}

发布这个是因为上面列出的方法都没有带我去代码(到 2021 年 6 月)

您可以尝试通过访问它;

Google Cloud Platform > Debugger > 从顶部的组合中选择应用程序的版本。

这将在左侧窗格中列出该版本的文件。 没有办法自动下载它,但你可以复制粘贴代码。

希望你会发现这很有帮助。

自从提出这个问题以来,情况发生了变化,因此我添加了更新的答案。 请注意,这仅适用于GAE 标准环境

Google 已弃用appcfg.py ,因此之前的响应appcfg.py download_app不再有效。

  1. gcloud是正在使用的 SDK(它取代了appcfg )没有下载源代码的功能。
  2. 当您通过gcloud app deploy部署您的应用gcloud app deploy ,它会将您的源代码复制到存储桶中。 默认存储桶是staging.<project_name>.appspot.com 您的文件将在此存储分区中最多保留 15 天,然后才会被删除。 您可以修改规则以使文件保留更长或更短的时间。
  3. 存储桶中的文件名已编码,因此除非您打开(即下载),否则您无法弄清楚每个文件是什么。 Google 将编码名称映射到原始文件名。 要获取此映射,请运行gcloud app versions describe命令,它会列出文件名及其编码名称。 要下载文件,您必须手动一一点击每个网址。 所以本质上,您必须手动下载每个文件,然后使用映射来重命名它们(或打开文件,检查内容然后重命名它们)。 另请注意,手动下载文件不会保持上传文件的文件夹结构。
  4. 如果您不想经历上述所有麻烦(想象一下,如果您有一个包含数百个文件的中小型项目,则必须手动打开每个文件的每个 url),我们的应用程序 - https://nocommandline。 com - 现在支持从默认存储桶下载源代码 - staging.<project_name>.appspot.com (只要您的文件仍然存在,这意味着任何部署,即从当前日期起更新不超过 15 天,除非您之前增加了暂存存储桶的生命周期页面上的删除年龄)。
  5. 简单来说,您输入您的项目名称、版本号,我们的应用程序将负责检索原始文件名到编码名称映射,自动下载文件并将它们重命名为原始名称,同时保持文件夹结构。 有关更多信息,请参阅https://nocommandline.com/help/#faq_download_source_code_from_gae

登录到您要从中下载代码的项目的console.developers.google.com Select(Google App Engine 标准环境)。 Go 到 App Engine 仪表板。 在摘要下是调试和源代码。 单击源。 Select 每个文件一次一个并复制它(突出显示代码,复制并粘贴到本地编辑器中。) Select 下一个文件....

您需要使用 svn 来检出文件。

如果您使用的是 Windows,您可以在 GUI 端使用tortoise svn

有关如何执行此操作教程,这是相关问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM