Mi piace rimuovere i repository su cui non sto lavorando dal mio computer. Controllo qualcosa, ci lavoro e quando ho finito spingo tutto ed elimina la cartella dal mio computer. In questo modo le cose restano in ordine, è facile avere una visione d'insieme su cosa sto effettivamente lavorando e so che non ho alcun materiale locale in attesa di essere spinto.Come assicurarsi che tutto sia stato spinto con git?
Ma ...
Prima di eliminare il mio repo locale che voglio per assicurarsi che tutto è stato spinto al mio telecomando. Il processo che passo è in genere questi tre passaggi:
git st # check if there's something I haven't committed
git stash list # check if I've stashed something
git log --oneline --decorate --all # check if all branches have been pushed
Vorrei semplificarlo. Soprattutto l'ultimo passaggio, che richiede di guardare tutte le mie filiali e vedere se sono sincronizzati quelli locali e quelli remoti. Per essere davvero sicuro, potrei anche dover scorrere un po 'per assicurarmi che non mi manchi nulla.
Sto pensando di scrivere una sceneggiatura per fare tutto questo automaticamente, ma forse c'è già una soluzione là fuori? (Lo prendo Non devo sottolineare che voglio questo fatto sulla riga di comando e non usando alcuna GUI di fantasia: D)
Come vi avvicinate questo? Qual è il tuo processo per verificare che non stai dimenticando nulla? quali strumenti usi? Tutte le idee sono ben accette!
Ancora meglio: utilizzare "git branch -vva" (nota double-v). Questo stamperà anche il ramo upstream in cui è stato impostato uno, rendendolo ovvio se qualcosa non è stato premuto. In questo modo, il confronto degli SHA1s sarà necessario solo per le filiali locali senza un ramo a monte. – sleske
@sleske: ho scoperto che è fuorviante. Stampa un ramo remoto inesistente per il ramo di funzione 'Foo'. –
Sarebbe bello se il downvoter potesse lasciare un commento. Altrimenti non posso aggiustare la risposta. –