Sto cercando di decidere se il passaggio a VCS è ragionevole per me. Sono un singolo sviluppatore web in una piccola organizzazione (5 persone). Sto pensando a VCS (Git) per questi motivi: controllo della versione, backup offsite, repository di codice centralizzato (può accedere da casa).
Al momento lavoro su un server live in generale. Ho FTP in, faccio le mie modifiche e le salvo, quindi ricaricare e aggiornare. Le modifiche sono in genere su file di temi / plugin per CMS (ad esempio concrete5 o Wordpress). Funziona bene ma non fornisce alcun backup e nessun controllo di versione.
Mi chiedo come integrare al meglio VCS in questa procedura. Immaginerei di configurare un server Git sul server Web dell'azienda, ma non sono chiaro come inviare le modifiche agli account dei client (di solito VPS sullo stesso server) - al momento accedo semplicemente a SFTP con i loro dettagli e realizzo le modifiche direttamente.
Inoltre, non sono sicuro di cosa rappresenterebbe sensibilmente un repository: il sito Web di ogni cliente ne otterrebbe uno proprio?
Qualsiasi approfondimento o esperienza sarebbe davvero utile. Non credo di aver bisogno della piena potenza di Git in alcun modo, ma il controllo di versione di base e l'accesso al cloud di fatto sarebbero davvero utili.
EDIT: l' ho ridotto alle due opzioni che sembrano più sensate. Il primo si basa sulla risposta di ZweiBlumen , in base alla quale le modifiche vengono apportate sul server live e trasferite da lì al server Git (esterno). Questo ha il vantaggio che il mio flusso di lavoro non cambierà molto (c'è un passaggio in più per effettuare i commit, ma per il resto è identico).
La seconda opzione è lavorare localmente usando XAMPP, quindi eseguire il commit delle modifiche dal computer locale. Solo quando il sito viene pubblicato, carico l'articolo finito sul server Web dal computer locale (immediatamente dopo il commit finale su Git). In teoria questo sembra a posto, ma se in seguito il sito richiede modifiche e le faccio sul server live (come faccio di solito), allora dovrò copiare manualmente i file modificati nel mio repository locale, quindi eseguire il commit di tali modifiche nel Server Git. Questo sembra eccessivamente complesso ed è forse troppo lontano dal mio attuale flusso di lavoro.
Penso che a conti fatti darò l'opzione n. 1 e vedrò come andrò avanti.