1
我從Github拉到我們網站的網絡服務器。所有操作都是通過bash腳本和scalr完成的。在我們的網站中,其中一個文件夾是NFS安裝到S3文件夾。有沒有一種方法可以在不殺死該文件夾並重新安裝的情況下進行拉動? 這是我當前的腳本:git github發佈到網站,但不要擦除文件夾?
## Git Clone -------------------------------------------------------------------
if [ -d "$DEPLOY_PATH"/.git ]; then
cd "$DEPLOY_PATH"
if $GIT_PATH status >/dev/null 2>&1; then
$GIT_PATH pull
exit 0
fi
fi
$GIT_PATH clone $GIT_REPO_URL $GIT_CL_DIR .
## Git Checkout ----------------------------------------------------------------
# There should be *no* changes to the pristine repo.
echo "Ensure pristine copy. Executing 'git reset --hard'."
$GIT_PATH reset --hard HEAD 2>/dev/null
echo "Pulling updates from $GIT_REMOTE"
$GIT_PATH fetch $GIT_REMOTE
current_branch=$($GIT_PATH branch | awk '/\* /{print $2}')
if [[ "$current_branch" = "$GIT_BRANCH" ]] then
echo "Already on branch '$GIT_BRANCH'."
elif ! $GIT_PATH branch | awk "/$GIT_BRANCH$/" >/dev/null 2>&1 then
echo "Checkout of branch '$GIT_BRANCH'"
$GIT_PATH checkout -b $GIT_BRANCH --track $GIT_REMOTE/$GIT_BRANCH 2>/dev/null
elif ! $GIT_PATH checkout $GIT_BRANCH 2>/dev/null then
echo "Branch '$GIT_REMOTE/$GIT_BRANCH' not found. Skipping remainder of update." 1>&2
exit 1
fi
# Run our git commands
$GIT_PATH pull
## Get submodules, if exist.
if [ -e ".gitmodules" ]
then
echo "Updating submodules."
$GIT_PATH submodule init 2>/dev/null
$GIT_PATH submodule update
fi
然後我做的文件夾和這樣的....
你能上,爲什麼你需要卸載的闡述目前能夠拉動的文件夾?即我沒有看到兩者之間的直接關係。另外,你的腳本有哪些錯誤? – favoretti
腳本沒有錯誤,只是把它作爲我正在做的事情的參考。 我需要安裝的文件夾是上傳的網站內的文件夾。由於我不希望這些上傳受Git版本的影響,因此我需要找到一種方法來保持git不會覆蓋這些文件。 –