Գրեթե բոլոր ծրագրավորողները ունեն shared հոսթինգ, որի վրա պահում են իրենց անձնական կայքերը կամ ժամանակվոր նախագծեր որոնք հետո պետք է տեղափոխվեն հաճախորդի հոսթինգ։
Շատ հոսթինգներ ֆայլերը upoload անելու համար տալիս են միայն ftp տարբերակը, ինչը առաջացնում է բազմաթիվ խնդիրներ՝
- պետք է հիշել որ ֆայլերի վրա ես փոփոխություն արել
- տարբեր ֆոլդերներում արված փոփոխությունները շատ անհարմար է upload անել
- ֆայլերը լոկալ ջնջելիս սերվերից չեն ջնջվում եթե առանձին չջնջես
Այս բոլորը բավականին դանդաղացնում էին աշխատանքը և հաճախ ցանկությունն էլ էր կորում փոփոխություններ անել։
Բայց այդ ամենը վերջացավ, երբ հայտնաբերեցի git-ftp plugin-ը git-ի համար։ Այն հնարավորություն է տալիս մեկ հրաման կանչելով կիրառել բոլոր commit արված փոփոխությունները FTP-ի միջոցով։
Նախագծի ավելացում git-ում
Նախ հարկավոր է ավելացնել նախագիծը git repository-ում, եթե այն դեռ այնտեղ չէ։ Ես օգտագործում եմ դրա համար GitLab-ը, բայց տարբերակները բազում են։
Git-FTP-ի ավելացում համակարգչում
Համակարգչում ավելացնելու համար հարկավոր է կանչէլ հետևյալ հրամանները՝
git clone https://github.com/git-ftp/git-ftp.git
cd git-ftp
# choose the newest release
tag="$(git tag | grep '^[0-9]*\.[0-9]*\.[0-9]*$' | tail -1)"
# checkout the latest tag
git checkout "$tag"
sudo make install
մանրամասն plugin-ի էջում։
Ստեղծել FTP account
Ձեր հոսթինգի ադմինիստրացիոն էջում (cPanel, Plesk, …) հարկավոր է գտնել FTP բաժինը և ավելացնել նոր account այն folder-ի համար որտեղ պետք է գտնվեն ֆայլերը։ Օրինակ cPanel-ում՝

FTP տվյալների ավելացում
Ավելացնում ենք ստեղծված account-ի տվյալները git-ի congif-ներում՝
git config git-ftp.url "ftp://ftp.domain-placeholder.am:21/public_html"
git config git-ftp.user "username"
git config git-ftp.password "pas$$word"
Առաջին կանչ
Առաջին կանչը շատ կարևոր է կախված նրանից ֆայլերը արդեն hosting-ում են թե ոչ։
Եթե ֆայլերը արդեն գտնվում են սերվերի անհրաժեշտ folder-ում, ապա պետք է համոզվել որ git-ում մեր ֆայլերը և սերվերի ֆայլերը չեն տարբերվում և կանչել՝
git ftp catchup
սերվերում կավելացվի նշում որ ֆայլերը ակտուալ են և այդ պահից հետո արված փոփոխությունները կհայտնվեն սերվերում։
Եթե սերվերի folder-ը դատարկ է պետք է կանչել՝
git ftp init
որից հետո բոլոր ֆայլերը upload կլինեն սերվեր։
Օգտագործում
Եթե առաջին կանչը հաջող ստացվեց հետագա փոփոխությունները կատարելիս պետք է commit անել և կանչէլ՝
git ftp push
Հրամանը upload կանի փոփոխված կամ նոր ստեղծված ֆայլերը և սերվերից կջնջի հեռացվածները։

