Vedo il comando "tirare" e mi chiedo come sia diverso da un "clone". Entrambi i termini sembrano implicare il recupero del codice da qualche repository remoto. C'è qualche sottile distinzione qui?È 'pull' un sinonimo di 'clone' in un repository Mercurial di controllo del codice sorgente?
risposta
hg clone
è come si crea una copia locale di un repository remoto. L'equivalente di Subversion è svn checkout
.
hg pull
estrae le modifiche da un altro repository. hg update
applica tali modifiche al repository locale. hg pull -u
equivale a hg pull; hg update
. The Subversion equivalente a hg pull -u
è svn update
.
Utilizzare clone quando è necessario creare un nuovo repository basato su un altro. Utilizzare pull in seguito per trasferire nuovi changeset nel clone. Non è possibile utilizzare clone per recuperare solo i nuovi changeset - questo è ciò che pull è per. Il comando pull confronta i due repository, trova i changeset mancanti nel tuo repository e infine li trasferisce.
Tuttavia, hai ragione che ci sono delle somiglianze tra clone e pull: entrambi trasferiscono la cronologia tra i repository. Se si clona prima
hg clone https://www.mercurial-scm.org/repo/hg/
allora questo ha lo stesso effetto esatto come fare
hg init hg
cd hg
hg pull https://www.mercurial-scm.org/repo/hg/
hg update
si ottiene la stessa identica storia in entrambi i casi. Il comando clone è più conveniente, però, dal momento che edita anche il file .hg/hgrc
per voi di impostare il percorso predefinito:
[paths]
default = https://www.mercurial-scm.org/repo/hg/
Questo è quello che ti permette di fare hg pull
nel repository senza specificare un URL. Un altro vantaggio dell'utilizzo di clone è quando si lavora con repository sullo stesso disco: hg clone a b
sarà molto veloce ed economico in termini di spazio su disco poiché b
condividerà la cronologia con a
. Questo viene fatto usando i collegamenti fisici e funziona su tutte le piattaforme (Windows, Linux, Mac).
clone crea un nuovo repository come una copia di un repository esistente.
importazioni tirare tutti i changeset (non già presente) da altri repository in un repository esistenti.
- 1. repository di codice sorgente multipli
- 2. pulizia di un Mercurial Repository
- 3. Controllo flusso di lavoro scheda per repository Mercurial
- 4. Posso ottenere un'istantanea tip di un repository mercurial, senza fare un clone completo?
- 5. clona è l'unico modo per ottenere il contenuto di un repository Mercurial?
- 6. Metti le build in un repository di codice sorgente?
- 7. ClearCase per il controllo del codice sorgente?
- 8. File di grandi dimensioni nel controllo del codice sorgente (TFS)
- 9. Mercurial: metodo consigliato per inviare un intero repository a qualcuno
- 10. Come inviare una richiesta di pull da un repository clonato?
- 11. clone GitHub da richiesta pull?
- 12. Qual è il miglior prodotto di controllo del codice sorgente per lo sviluppo di Visual Studio?
- 13. In che modo un "ritardo di commit" funziona con i repository di controllo del codice sorgente e i server CI?
- 14. Haskell's `otherwise` è un sinonimo di` _`?
- 15. È possibile integrare MKS Integrity con altri strumenti di controllo del codice sorgente? (SVN, Git ...)
- 16. mercurial: "Clonazione" di un solo file da un repository a un altro?
- 17. Strumento per la revisione del codice nel repository Mercurial
- 18. È il controllo del codice sorgente SQL RedGate per me?
- 19. Per un progetto Xcode, è bene aggiungere anche file .xcodeproj al controllo del codice sorgente?
- 20. clone git da Visual Studio (utilizzando il provider controllo del codice sorgente Git)
- 21. Cruise Control & Git: "L'operazione di controllo del codice sorgente è scaduta." error
- 22. Come posso spiegare il controllo del codice sorgente (Mercurial/Tortoise in modo specifico) a un non programmatore?
- 23. Mercurial Server è un must per l'utilizzo di Mercurial?
- 24. Differenza di formattazione e controllo del codice sorgente
- 25. Memorizzare gli SDK di Windows nel controllo del codice sorgente?
- 26. Il controllo del codice sorgente in XCode è un incubo: qualcuno può offrire consigli?
- 27. Sistemi di controllo del codice sorgente nello sviluppo Web
- 28. Estrazione di una sottodirectory del repository A in un altro repository B utilizzando mercurial
- 29. Clone repository in GitHub
- 30. Installazione di un controllo sorgente senza diritti di amministratore
Dal momento che ti sembra di essere solo agli inizi con Mercurial, probabilmente si dovrebbe leggere attraverso questa domanda Stack Overflow: http://stackoverflow.com/questions/1170338/mercurial-for-beginners-the-definitive-practical-guide È dovrebbe anche leggere e/o lavorare attraverso i primi capitoli di "Mercurial: The Definitive Guide": http://hgbook.red-bean.com/read/ Infine, potresti voler creare un progetto giocattolo su http: // bitbucket.org/ per ottenere un po 'di pratica lavorando con Mercurial. – las3rjock
Ottimi collegamenti. Molto utile. Grazie. – tent
http://hginit.com/ fornisce anche un eccellente tutorial. Ho tutti i miei nuovi impiegati e stagisti che lavorano attraverso di esso quando si uniscono al mio team. – JSmitty