Идвайки от Subversion, аз съм свикнал с "svn status -u", за да проверя дали ще получа конфликти, преди да се регистрирам в отдалеченото репо.
Може ли да се направи по същия лесен начин с GIT? за предпочитане преди извършване на местно ниво.
Идвайки от Subversion, аз съм свикнал с "svn status -u", за да проверя дали ще получа конфликти, преди да се регистрирам в отдалеченото репо.
Може ли да се направи по същия лесен начин с GIT? за предпочитане преди извършване на местно ниво.
Ето един начин да го направите. Първо извлечете всички промени от дистанционното:
git fetch <remote>
Сега нека приемем, че сте направили необвързани промени в master
и искате да видите какво се е променило в <remote>/master
. След това просто използвайте следното:
git diff --name-status master <remote>/master
Това ще покаже списъка с променени файлове, заедно с техния статус.
Сега, ако всъщност сте извършили промени във вашия локален master
и искате да видите какво може потенциално да е в конфликт, можете просто да направите сливането локално, за да го изпробвате, след което да го нулирате обратно на мястото, където е било, ако не ви харесва резултати:
git checkout master
git merge <remote>/master
# Don't like the results, reset
git reset --hard head^
Има и други начини да получите тази информация, ще ги добавя по-късно.