8

Iam utilizzando win xp con Tortoisehg 2.3. Uso il bucket di bit per eseguire il backup del mio codice sorgente personale. (raramente per il controllo della versione reale, più come un archivio di backup di origine). In questo momento devo fare clic destro sul mio repository, selezionare commit, quindi inserire un messaggio di commit (ho scelto di copiare solo lo stesso messaggio che ho usato l'ultima volta, c'è un menu a tendina per farlo), quindi fare clic su commit. Quindi faccio di nuovo clic con il pulsante destro del mouse e seleziono la sincronizzazione e passerò attraverso questa opzione per spingere infine. Potrei usare il banco di lavoro e fare qualcosa di simile. Voglio ottimizzare questo processo, così ho deciso di scrivere solo uno script di dos bat per commettere e spingere. Quando spingo Tortoisehg sputa il comando hg alla finestra e puoi vederlo e tagliare e incollare da qui. Per il commit non mostra cosa sta realmente facendo sotto il cofano. Quando ho usato TortoiseSVN molto indietro, ricordo che c'era un file di log in cui erano stati memorizzati tutti i comandi svn eseguiti per il debug. Così ho iniziato a cercare un log file TortoiseHg.tortoisehg one step commit push - come e dove è il file di registro

Qualcuno sa:

1) Se TortoiseHg hanno un file di log da qualche parte dove memorizza tutti i comandi Mercurial eseguito completo di tutte le opzioni della riga di comando?

2) Esiste un modo migliore per eseguire un'operazione di commit one step (tramite Tortoisehg gui o bat o qualche addon/estensione, ecc.)?

riguarda

risposta

9

1) Se TortoiseHg hanno un file di log da qualche parte dove memorizza tutti i comandi Mercurial eseguito completo di tutte le opzioni della riga di comando?

TortoiseHg in realtà non è molto correlato a TortoiseSVN - i due progetti non condividono quasi alcun codice e sono sviluppati da gruppi diversi. Quindi non penso che ci sia un file di registro per TortoiseHg anche se TortoiseSVN ne ha uno.

2) Esiste un modo migliore per eseguire un'operazione di commit one step (tramite Tortoisehg gui o bat o qualche addon/estensione, ecc.)?

si potrebbe configurare un post-commit hook. Aggiungere questo al file .hg\hgrc per il repository (creare il file in base alle esigenze):

[hooks] 
post-commit = hg push 

In questo modo potrete eseguire hg push dopo ogni commit, anche quando il commit è fatto da TortoiseHg.

+0

mart. C'è comunque che potrei codice duro mio messaggio di commit in questo file hgrc?In caso affermativo, pls indica la sintassi per questo problema. In questo momento ho bisogno di fare clic sul messaggio a discesa della copia ogni volta e fare clic su un messaggio prima di fare clic su commit – Gullu

+1

Se si desidera codificare il messaggio di commit troppo (non molto consigliato - se non si cura dei messaggi di commit, quindi solo impostare invece un processo di backup periodico), quindi è possibile utilizzare 'hg commit -m" il proprio messaggio "' dalla riga di comando. Cioè, smetti di usare la parte GUI di TortoiseHg e metti "hg commit -m" auto commit "' e 'hg push' in un piccolo file' commit.bat'. –

+0

Accetto. Il file Bat è il migliore sln dal momento che posso semplicemente collegarlo al desktop e tutta la magia può accadere con un solo clic del mouse. grazie per il tuo aiuto. – Gullu

21

In realtà c'è un'opzione in TortoiseHg per fare questo:

  1. Dalla finestra Commit clic sul pulsante "Opzioni" accanto al pulsante "Copia il messaggio" hai utilizzato.
  2. Questo apre una finestra con alcune opzioni: la terza in basso è "Push After Commit". Spuntalo.
  3. Enter "default" nella casella accanto all'opzione
  4. Fare clic su "Salva in Repo" in modo che si salva per la prossima volta

Ora che spingerà al target di comando predefinito ogni volta che si impegnano da TortoiseHg. Una cosa da notare è che questo non comporterà un push automatico se si esegue il commit dalla riga di comando mentre la soluzione di Martin lo farà.

+0

ringrazia Steve, +1 per questo fantastico trucco, ma selezionando Martin's ans dal momento che come hai detto funziona anche da linea di comando. Ora l'unica cosa che manca è che se in qualche modo da qualche parte in TortoiseHG potrei scrivere a macchina il mio messaggio di commit. In questo momento ho bisogno di fare clic sul menu a discesa del messaggio di copia ogni volta e fare clic su un messaggio prima di fare clic su commit. In ogni modo questo può essere fatto? – Gullu