Использование RestAPI для получения связанных наборов изменений после слияния веток - PullRequest
0 голосов
/ 21 апреля 2020

Ради этого вопроса у нас есть две ветви в нашем командном проекте; QA и релиз. Все наборы изменений имеют важную информацию в поле описания, которое является ссылкой на наше программное обеспечение службы поддержки в виде - RZ: issue_number; Я пытаюсь разработать консольное приложение, которое бы получало все номера выпусков из всех наборов изменений, которые входили в последнюю сборку команды. Сборка основана на выпуске ветки. У меня нет проблем с получением этой информации из наборов изменений, непосредственно проверенных в Release. Но QA объединяется с Release перед сборкой, и у этих наборов изменений нет описания в ветке Release. Итак, я планировал получать связанные наборы изменений из действия слияния, чтобы я мог прочитать их описание, но я не нашел способа как это сделать.

            var changes = buildKlijent.GetBuildChangesAsync("Argosy", build.Id).Result;

            foreach (var change in changes)
            {
                string komentar = change.Message;

                if (komentar.Contains("RZ:"))
                {
                    int start = komentar.IndexOf("RZ:") + 3;
                    int end = komentar.LastIndexOf(';');

                    string[] sirovirzovi = komentar.Substring(start, end - start).Split(new char[] { ',', ';' });
                    foreach (string rz in sirovirzovi)
                    {
                        int id;
                        if (int.TryParse(rz, out id))
                            radniZadaci.Rows.Add(id);
                    }
                }
                else
                {
                    var changeSet = sourceKlijent.GetChangesetAsync(int.Parse(change.Id.Substring(1))).Result;
                    //TO DO: Get linked changeset from QA branch
                }
            }

Итак, мой вопрос сводится к следующему: учитывая идентификатор набора изменений и этот набор изменений создается во время операции слияния веток, как я могу получить связанный набор изменений?

Мы используем сервер TFS2015 для разработки.

1 Ответ

1 голос
/ 22 апреля 2020

Вы можете использовать Changesets - Get Chanset Changes API для получения mergeSources значений. Затем вы увидите связанные идентификаторы изменений.

enter image description here

...