簡體   English   中英

如何使用 Azure 管道將一個存儲庫中的文件和子目錄與另一個存儲庫中的文件和目錄同步?

[英]How to use an Azure pipeline to sync a file and subdirectory in one repo with a file and directory in another repo?

所以我有 2 個 repos,有點像這樣:

/repoA
   /directoryA
     /fileA
     /subdirectoryA
       ...lots of files in here

/repoB
   /directoryB
   /fileB
   ...lots and lots and lots of other directories and files

我想要做的是將fileAfileB同步,並將subdirectoryA的所有內容與directoryB的所有內容同步,這樣我推送到fileAsubdirectoryA中的任何內容的任何更改也將被 CI/CD 管道推送到相應的repoB 中的文件或目錄。 我不關心 repoB 中的任何其他文件或目錄,所以我不想讓它們弄亂我的 repoA。

我怎樣才能做到這一點?


上下文:我正在使用 Azure DevOps,其中 RepoA 在 ProjectA 中,而 RepoB 在 ProjectB 中。 ProjectA僅供我團隊使用,ProjectB供本公司rest使用; RepoB 實際上是 ProjectB 的項目 wiki。 我不想在 2 個地方物理維護我們的文檔,也不必將 go 放到一個單獨的項目中來更新它(這樣的瓶頸意味着它永遠不會更新),我想使用 Azure 管道來自動推送我們的任何文檔更改將 RepoA 中的 wiki 轉移到 RepoB 中的 wiki,以便每個人都消息靈通和快樂。

根據您的要求,您需要同步兩個 repos(不同項目)中的文件。

沒有開箱即用的方法可以滿足您的要求。

為了實現這個目標,您可以使用 Azure 管道自動執行此操作。

以下是步驟:

Step1:添加擴展: Git Tools for Azure DevOps 您將獲得任務: Git Publish Task

Step2:在管道中添加 Git 發布任務。

在此處輸入圖像描述

Git 回購 url 樣品:

https://{UserName}:{PAT(Personal Access Token)}@dev.azure.com/{Organization}/{Project}/_git/{RepoName}

Step3:您需要在Pipeline中設置Trigger 在此處輸入圖像描述

您可以設置分支和路徑。 當 fileA 或子文件夾路徑中的文件發生更改時,會觸發此管道並將更改推送到目標 repo。

如果您不想使用擴展,可以嘗試使用 Git 命令替換 Git 發布任務。 但是會稍微復雜一些

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM