2014-10-07 31 views
9

Her şimdi ve sonra "git" yazıp sonra başka bir şey düşünün, sonra "git checkout master" yazın. Tabii ki, bu bir no-op olduğunu git adında bir git takma adı oluşturmak için bir yolu var mıAlias ​​"git git" sadece "git"?

$ git git checkout master 
git: 'git' is not a git command. See 'git --help'. 

Did you mean this? 
    init 
$ 

beni bırakır? "git = ''" ve "git = """ ve "git = " "" gibi açık olanları denedim ama şaşırtıcı şekilde değil, hepsi Expansion of alias 'git' failed; '' is not a git command gibi yanıtlarla sonuçlanıyor. Aksine takma yerine, sadece komut içerikleri ile yolu git-git adında olması gerekir:

cevap

14

cevabı anladım sen "git git", git git-git arar derken öylesine

#!/bin/bash 
git "[email protected]" 

ve kalan argümanları ona iletir. Tabii ki, özyineleme yaparak, çok fikirli yok olabilir ve istediğiniz gibi "git" olarak defalarca ki:

$ git git git git git git git git git git git git status # <- still works 

Güncelleme: Ben gitgit status üzerine butonu Dün. Yani, siz bu işteyken, git-git - gitgit numaralı bağlantıya sahip olabilirsiniz. Bu sonsuza kadar zincirleme değil, yine de.

+2

Düşünebileceğiniz herhangi bir kötü yan etki var mı? – Jubobs

+0

Hiçbirini düşünemiyorum. Kolayca "git" olarak yanlış yazılmış bir yıkıcı olmalıydı? – Ben

+0

Bilmiyorum. Sadece soruyordum. Yine de +1. – Jubobs