Qual è la piattaforma più semplice e basilare per lo sviluppo collaborativo (progetto PHP)? [chiuso]

14

Ho bisogno di lavorare con 4-5 programmatori su un'applicazione PHP abbastanza comune usando codeigniter. Siamo in 5 diversi luoghi in una città, e tutti i programmatori non sono tutti troppo istruiti e presumo che la maggior parte di loro non abbia mai usato alcun sistema di controllo di versione.

Puoi consigliare una piattaforma molto molto facile da raggiungere per collaborare a un progetto come questo? Sto parlando di qualcosa che è solo un po 'più sofisticato di una cartella dropbox condivisa.

    
posta Esuus 16.07.2012 - 16:27
fonte

6 risposte

12

Conosci già la risposta

Il controllo della versione è stato progettato per risolvere questo problema esatto . Se i tuoi sviluppatori non vogliono imparare a utilizzare questa pratica di sviluppo standard, potrebbe essere necessario riconsiderare i tuoi sviluppatori. Che tipo di software hanno intenzione di sfornare se mostrano un'avversione per le pratiche standard accettate, nonché un'avversione per l'apprendimento di nuove cose?

Suggerirei di leggerli Pro Git e di configurare un repository git privato per il tuo team.

    
risposta data 16.07.2012 - 16:33
fonte
3

... FTP

Ok, questo è il modo in cui ho iniziato a collaborare, collegando Notepad ++ all'FTP, il backup di crap ogni 10 minuti nelle cartelle rinominate è davvero risucchiato, se lo fai, per il tuo progetto usa almeno il controllo della versione sul server.

Un IDE online

Cloud9 è molto bello e ha modifiche simultanee, tuttavia ti costerà avere più di 1 spazio di lavoro privato per lavorare con il tuo team, ma ne vale la pena.

... prova Mercurial

Se non trovi Git abbastanza accessibile dai tuoi colleghi, prova Mercurial con TortoiseHG, che è un client GUI per Mercurial. Ci vorranno due minuti per l'installazione e meno per iniziare a usarlo.

Chiedi loro di usare la GUI, devono solo imparare a usare 4 pulsanti (tirare, aggiornare, confermare, spingere) e imparare 2 o 3 concetti per salvare e condividere il loro lavoro.

Chiedi loro di registrarsi in bitbucket . Crea un repository per il tuo progetto e falli distribuire in modo che possano lavorare nel proprio mirror del repository e in questo modo non devono occuparsi della fusione. Fai l'integrazione e chiedi loro di inviare richieste di pull dalla loro forcella di Bitbucket dopo che hanno premuto. Invitali a prelevare solo dal tuo repository (quello da cui hanno biforcato).

Impara Mercurial te stesso in modo da poter risolvere tutti i problemi correlati, questo è un buon inizio: link

Prova entrambi

Puoi usare Mercurial da Cloud9, quanto è bello?

Smetti di assumere

Se sei quello che cerca di usare gli strumenti corretti, sei già in una posizione di leadership. Non dare per scontato che non siano educati e parlare con loro di come sono fatte le cose nel mondo reale.

Sii entusiasta di ciò non paternalistico.

In realtà non è più facile se vuoi fare le cose per bene. Se loro espressamente non vogliono usare il controllo di versione, potresti avere un altro tipo di problema più serio.

    
risposta data 26.07.2012 - 20:34
fonte
2

I'm assuming that most of them have never used any version control system.

Devi correggere quell'ipotesi e scoprire se hanno o non hanno alcuna conoscenza o esperienza di alcun sistema di controllo della versione. Non ha senso assumere quando potrebbero avere conoscenza.

Come altre risposte hanno detto, questo è il controllo di versione. Git è probabilmente la miglior soluzione, e Learn Git è un ottimo punto di partenza

    
risposta data 18.07.2012 - 09:35
fonte
2

Bene, non c'è via d'uscita che usare controllo di versione .

Dropbox ha una sorta di controllo della versione , ma credo che se due persone salvano un file, il la versione più recente sostituirà semplicemente la versione precedente, che non è auspicabile per il controllo della versione durante lo sviluppo del software.

Svn è un sistema di controllo delle versioni facile da apprendere (almeno più facile di git), e puoi trovare vari repository pubblici ospitati online, ma non lo consiglierei ai team distribuiti geograficamente.

Quindi la strada da percorrere per i team delegati è git. Se avere la tua fonte pubblica O acquistare un piano privato non è un problema, quindi crea un repository su github , altrimenti imposta un repository git locale.

Potresti trovare una GUI per git che potrebbe rendere più facile per questi sviluppatori iniziare a cogliere concettualmente un sistema di controllo della versione. Per Windows è TortoiseGIT . Non ho usato alcun client git gui per Linux o MAC, quindi non ne consiglio uno qui.

    
risposta data 16.07.2012 - 19:13
fonte
2

Raccomando ai tuoi sviluppatori di link

Tuttavia, se non è possibile il controllo della versione, è possibile inserire qualcosa che si adatti al principiante / junior che è di base (e arcaico).

  1. l'APP + DB sul server di sviluppo
  2. Tutti sullo stesso messenger tutto il tempo mentre lavorano in modo che possano parlare e sapere chi sta lavorando
  3. Tutte le modifiche vengono pubblicate dal server DEV tramite il semplice vecchio FTP
  4. Applica le regole del team sull'aggiornamento di un registro delle modifiche con le relative revisioni + rendendo cruciali i commenti del codice

Anche l'installazione per la cartella web del tuo server di sviluppo potrebbe essere svn checkout (o git) e puoi configurare crontab in modo automatico di eseguire revisioni ogni tanto automaticamente oppure puoi semplicemente installare un backup o forse rsync la cartella in qualche altro backup posizione per quando sovrascrivono i file di altri (come accadrà) e devi dare a Bob le sue modifiche che ha perso. Alla fine, dopo aver lavorato con il sistema per alcuni mesi, ti imploreranno di dare loro l'accesso a svn / git.

    
risposta data 18.07.2012 - 16:58
fonte
1

Sei sulla buona strada

Il version controlling è la strada da percorrere! Servirà bene per collaborare alla condivisione del codice e aiutare con l'integrazione. Inoltre, i frequenti check-in sono una disciplina molto importante che tutti i team devono praticare.

Tuttavia, scegliere il giusto controllo della versione per il tuo progetto è molto importante.

C'è un bel post e le risposte per aiutarti a decidere: Che cosa è un buon esempio di giocattolo per insegnare il controllo della versione?

    
risposta data 16.07.2012 - 21:35
fonte

Leggi altre domande sui tag