이 함수는 폴더의 모든 로컬 git 저장소를 찾아 작업을 수행합니다 ~/src
. git pull
점점 더 오류가 발생합니다.
Please commit your changes or stash them before you merge.
Aborting
이 문제를 해결하려면 실행해야 git reset --hard
하지만 의 출력을 기반으로 해당 명령을 실행하는 방법을 평생 알 수 없습니다 git pull
. 위의 메시지가 나타나면 실행하고 git reset --hard
, 그렇지 않은 경우 정상적으로 계속하세요.
현재 반작업 기능은 다음과 같습니다.
updatesrc() {
for i in */.git;
do (
echo $i;
cd $i/..;
git pull;
);
done
}
답변1
당신은 다음과 같은 것을 할 수 있습니다
local_changes=$(git status -s)
if [[ -n "$local_changes" ]]; then
git reset --hard
fi
더 적절한 git 하위 명령이 있다고 확신합니다.
하지만 로컬 변경 사항에 전혀 신경 쓰지 않는다면 무조건 재설정하세요.
git reset --hard
git pull