基本上,我要做的是从我在Visual Studio TFS 2015中托管的git存储库下载所有源代码。使用Powershell脚本。
最终目标是开发一种自动化,然后获取该代码,对其进行一些操作并将其推送到另一台服务器。
问题是,到目前为止,我知道获取代码的唯一方法是向系统进行身份验证,然后git clone
存储库。另一方面,首先我真的不想要 git 的依赖关系,因为我只想要文件,其次,我不想克隆存储库,概念上。
总而言之,任何关于如何实现这一目标的见解都是值得赞赏的!
若要获取存储在 TFS 中的 Git 存储库中的文件,请使用项 API。
此 API 的格式如下所示:
https://{instance}/{project}defaultcollection/_apis/git/repositories/{repository}/items?api-version={version}&scopepath={filepath}[&includecontentmetadata={bool}&lastprocessedchange={bool}]
此 API 的实际示例(使用变量替换(可能如下所示:
https:/mytfs:8080/defaultcollection/MyProject/_apis/git/repositories/MyRepo/items?api-version=1.0&scopepath=ReadMe.md
在上面的示例中,我尝试从名为 MyProject 的项目中名为 MyRepo 的 Git 存储库下载名为 ReadMe.md 的文件。
可以使用Invoke-RestMethod
Powershell 方法获取结果。