2015-02-12 38 views
5

W Git można tworzyć niestandardowe polecenia, używając aliasu lub tworząc plik wykonywalny, zawarty w ścieżce PATH, zaczynając od git-. Czy istnieje jakiś powód, by wybrać alias, a nie skrypt?Jakiś powód używania aliasu Git zamiast skryptu git- *?

Pracuję z zespołem programistów i zrobiłem kilka przydatnych aliasów, którymi chciałbym się z nimi podzielić. Mój kolega zasugerował, że aliasy powinny być używane do prostych rzeczy, takich jak skrócenie polecenia (np. git co jako alias dla git checkout), i że skrypty będą przydatne w bardziej skomplikowanych zadaniach, takich jak łączenie wielu funkcji w jedno. Ale nie mógł wymyślić żadnego powodu, dla którego nie miałby korzystać ze skryptów, nie był pewien, czy tak właśnie powinien być, czy też gdzieś usłyszał, że tak właśnie powinno być, albo co.

Nasz zespół pracuje na tym samym serwerze programistycznym, więc jeśli mogę użyć skryptu, mogę go po prostu umieścić w /usr/local/bin i każdy będzie miał do niego dostęp automatycznie. Więc nawet przy użyciu prostego aliasu wygodniej byłoby po prostu mieć go jako skrypt git, tak aby każdy automatycznie go miał, w przeciwieństwie do mnie, gdybym kazał każdemu ustawić go indywidualnie. Nie wspominając już o tym, kiedy zaczyna się nowy programista, musielibyśmy pamiętać, aby je również skonfigurować.

Wiem, że to brzmi jak prowadzę kampanię dla podejścia scenariuszowego, i jestem. Zastanawiam się tylko, czy jest jakaś wada do stosowania tego podejścia.

Odpowiedz

3

Aliasy są definiowane poprzez mechanizm config git, więc mogą one dotyczyć zarówno całego systemu, jednego użytkownika, lub po prostu jedno repozytorium, w zależności od tego, czy zdefiniujesz je w /etc/gitconfig, lub $GIT_DIR/config. Jeśli skopiujesz własny plik .gitconfig na nowy komputer, będzie on zawierał wszystkie Twoje osobiste aliasy, kopiując pojedynczy plik, co wydaje się mniej narzutem niż skopiowanie pełnego katalogu i prawidłowe skonfigurowanie plików.

+0

Nie miał pojęcia o systemowej konfiguracji git. Wydaje mi się, że najlepiej jest użyć systemu git config do skracania zwykłych poleceń git, a także skryptów powłoki dla komend połączonych z ciężkim ładowaniem. Pytanie nie polegało na łatwości przenoszenia poleceń na nowy komputer, ale na ustawieniu nowego użytkownika na tym samym serwerze, o ile możemy ustawić aliasy, aby zastosować je do wszystkich użytkowników w systemie (co możemy, jak zauważyłeś), to działa dla nas. Dziękuję Ci! – Travesty3

+0

Należy zwrócić uwagę, że skrypt może być wywoływany z poziomu definicji aliasu. W takim przypadku udostępnianie plików konfiguracyjnych Git innym osobom nie będzie wystarczające; musisz również udostępnić skrypt, o którym mowa. – Jubobs

4

z wykorzystaniem aliasów git będzie można korzystać z autouzupełniania nazw branży, tagi itp

+0

+1 Bardzo ważny punkt. Wystarczy to wypróbować i na pewno, autouzupełnianie działa z aliasem, ale nie ze skryptem. Dziękuję Ci! – Travesty3

+0

Autouzupełnianie zadziała, jeśli nazwiesz skrypt jak 'git-foo' –