Il mio datore di lavoro utilizza ancora VisualSourceSafe6. Tutto è archiviato nella directory principale del progetto in VSS. Non stanno usando la ramificazione in VSS. I check-in dovrebbero essere pronti per il rilascio al QA e non dovrebbero interrompere la build (non applicata).
Voglio usare git come repository locale in modo da poter tenere traccia delle modifiche per feature (ramo) e avere una cronologia delle mie modifiche prima di trasferirle a VSS. Ho bisogno di questo perché alcune modifiche potrebbero estendersi per più di 3-4 giorni prima che possano essere archiviati in VSS.
NOTA: la mia comprensione di alcuni concetti git è molto nuova e potrebbe essere offbase.
Dopo aver letto queste domande simili:
- Uso di Git con Visual Source Safe 6.0
- Come utilizzare al meglio Git When My Il datore di lavoro utilizza VSS?
- Combina DVCS con Visual Source Safe
Ecco cosa stavo pensando di fare:
C: \ VSS \ ProjectA dove eseguo azioni specifiche VSS get-latest-version, chechout e checkin ecc. Il file di soluzione / progetto avrà binding a VSS poiché altri sviluppatori useranno ancora VSS e alcuni potrebbero usare git con VSS come me.
C: \ My \ ProjectA dove svolgerò il mio lavoro di sviluppo e utilizzando i workflow di git.
Per configurare le cartelle che ho fatto:
- Scarica l'ultima versione da VSS in
C:\VSS\ProjectA
-
C:\VSS\ProjectA>git init
eC:\VSS\ProjectA>git add .
, questo diventa il mio ramo principale -
git clone C:\VSS\ProjectA C:\MY\ProjectA
, questo diventa il mio clone di sviluppo
D: Se ho legami VSS nel mio file di soluzione / progetto, VisualStudio proverà a connettersi a VSS anche dalla mia cartella git clonata C:\MY\ProjectA
. Quindi ho bisogno di rimuovere i collegamenti VSS dopo la clonazione, corretto?
Quando si lavora su una funzione che ho bisogno di:
- scarica l'ultima versione da VSS in
C:\VSS\ProjectA
- D: devo trasferire il file modificato nel repository git principale?
-
C:\MY\ProjectA>git fetch
eC:\MY\ProjectA>git checkout
, Q: corretto? - fai qualunque ramificazione, commit, unione, rebase etc nel mio repository di sviluppo
- recupera il mio repository di sviluppo e il master repository e controlla quei file in VSS
-
C:\MY\ProjectA>git push
, Q: corretto? -
C:\VSS\ProjectA>git checkout
, Q: corretto? -
C:\VSS\ProjectA>git commit
, Q: corretto? - archivia i file modificati in VSS
UPDATE sembra che git per windows (VisualStudio2015) non supporti ancora la spinta verso repository locali non nudi, c'è qualche soluzione?