Как настроить идентификатор фиксации при выполнении развертывания с использованием VSTS и ANT (SALESFORCE) - PullRequest
0 голосов
/ 15 мая 2018

Я создал работу по сборке VSTS, используя ANT.Я выполнил следующие шаги.

  1. Извлек все из моей производственной среды, используя функцию извлечения через ANT.
  2. Успешно настройте Source Control с рабочим кодом, используя GIT в VSTS.
  3. Создана ветка DEVELOP для разработки и изменений.
  4. Передайте и отправили все изменения в ветку разработки.
  5. Теперь в моей исходной папке "src" ветки разработки есть все средства (Производство + Изменения разработки)

Я пытался запустить сборку на одной из песочниц, используя ветвь разработки, но ограничил Package.xml, содержащий компоненты, которые были изменены в процессе разработки.

Получение следующего Ошибка.

ПРОБЛЕМА ВЫПУСКА

Теперь я знаю, что все находится в моей ветке разработки, но определен очень специфичный package.xml, потому что я хочу развернуть не все компоненты.

Любая помощь, чтобы решить эту проблему?Или в любом случае, где мы можем вытащить источник / ФАЙЛ / Компонент, указав идентификатор коммита, как в этом коммите и т. Д.

1 Ответ

0 голосов
/ 16 мая 2018

Или в любом случае, где мы можем ВЫТЯНУТЬ исходный файл / ФАЙЛ / Компонент, упоминая идентификатор коммита, как в этом коммите и т. Д.

Вы можете сначала очистить рабочий каталог репозитория git, а затем получить измененные файлы после определенного коммита.Наконец, извлеките измененные файлы в рабочем каталоге git, чтобы в git repo оставались только измененные файлы.

Подробные шаги, как показано ниже:

  1. Очиститьвсе файлы рабочего каталога в git repo

    git rm -rf .
    
  2. Получить измененные файлы после определенного коммита

    git diff <commit> <current branch name> --name-only
    
  3. Get the changed file into working directory

    git checkout HEAD -- <filename>
    

Предположим, вы хотите сохранить файлы, которые изменились только на ветке develop (после ветки master при коммите 4c671), затем пример сценария оболочки, как показано ниже:

git rm -rf .
for t in $(git diff 4c671 develop --name-only) 
do
{
  echo "changed file $t"
  git checkout HEAD -- $t
}
done

или

git rm -rf .
for t in $(git diff master develop --name-only) 
do
{
  echo "changed file $t"
  git checkout HEAD -- $t
}
done
...