So che questa è una risposta molto tardiva, ma questa domanda mi ha davvero colpito perché ho avuto a che fare con questo tipo di ripetizione da un po 'di tempo.
Non sono sicuro di te ma sinceramente non voglio (ripeto NON VOGLIO ) creare alias per ogni git
comando, quindi ho scritto uno script Python chiamato NoGit per risolvere questo problema:
#!/usr/bin/env python
import sys, os, signal, atexit, readline, subprocess
commands, stop, history_file = [], False, os.path.join(os.getcwd(), "git.history")
def run_commands():
stop = True
for cmd in commands:
command = ["git" if not cmd.startswith("git ") else ""]
command = [cmd] if command[0] == "" else [command[0], cmd]
subprocess.Popen(command).communicate()
commands = []
def signal_handler(sig, frame):
run_commands()
sys.exit(0)
try:
readline.read_history_file(history_file)
signal.signal(signal.SIGINT, signal_handler)
while True:
if stop == True:
break
command = input("git> ")
if command == "%undo":
commands.pop()
elif command == "%run":
run_commands()
elif command == "%exit":
sys.exit(0)
else:
commands += [cmd.strip() for cmd in command.split(";")]
signal.pause()
readline.set_history_length(-1)
except IOError:
pass
atexit.register(readline.write_history_file, history_file)
NoGit è un semplice script Python per evitare la ripetizione non necessaria della parola chiave "git".
Documentazione:
- il
%undo
comando rimuove l'ultimo comando dallo stack
- il
%run
comando esegue i comandi nello stack e cancella lo stack
- il
%exit
comando chiude la CLI senza fare nulla
- premere
ctr+c
equivale a correre%run; %exit
- lo script salva i comandi che sono stati eseguiti su un file chiamato
git.history
nella stessa cartella dello script
- puoi aggiungere più comandi in una riga usando un punto e virgola
- puoi usare la parola chiave
git
all'inizio del comando e lo script non la duplicherà ( eg: git init
non diventa git git init
)
Comandi di esempio:
init
add .
stage .
commit -m "inital commit"
%run; %exit
Informazioni aggiuntive (per utenti Linux):
Se lo desideri, puoi rimuovere l' .py
estensione e convertirla in un eseguibile utilizzando:
mv ./git.py ./git
chmod +x ./git
Quindi invece di chiamare lo script in questo modo:
python3 git.py
Avresti eseguito questo invece:
./git
Informazioni aggiuntive (per i più pigri):
Se sei pigro e non vuoi scrivere a, ./
puoi spostare questo script nella tua /bin/
cartella e creare un alias per questo.
Se sei davvero molto pigro, usa i seguenti comandi:
sudo cp ./git /bin/nogit
sudo chmod +x /bin/nogit
alias nogit='/bin/nogit'
Se sei davvero, davvero, molto pigro, copia e incolla il seguente one-liner:
sudo cp ./git /bin/nogit && sudo chmod +x /bin/nogit && alias nogit='/bin/nogit'
Se la tua pigrizia ha raggiunto livelli precedentemente sconosciuti all'umanità, ecco una versione più compatta dello stesso one-liner:
sudo cp ./git /bin/nogit;sudo chmod +x /bin/nogit;alias nogit='/bin/nogit'
In bocca al lupo.