2

Cygwinとそれに付属しているデフォルトのgit(v1.7.9)(/ usr / bin / git)を使用しています。msysgit(v1.7.11.msysgit.0)もインストールしています。私の.bashrcでは、

export GIT_CONFIG=path_to_.gitconfig

実行すると、 (以下の関連する抜粋)git config --listの内容が表示されます。.gitconfig

 ...
 alias.co=checkout
 alias.br=branch
 alias.ci=commit
 alias.st=status
 alias.logp=log --pretty=format:"%h - %an, %ar : %s"
 alias.logl=log --pretty=oneline
 alias.graph=log --pretty=format:"%h - %an : %s" --graph
 ...

しかし、私が実行するgit ci -m "this is a test"と、

 git: 'ci' is not a git command. See 'git --help'.

 Did you mean one of these?
    am
    citool
    commit
    config
    diff
    fsck
    gc
    init
    mv
    rm

cygwinに付属するgitは別の方法で設定する必要がありますか?

4

2 に答える 2

1

そのgitは、新しいコマンドのエイリアシング時にロードしていた.gitconfigファイルに書き込もうとするので、実行しましたgit config --global alias.testalias random_git_command。次に、私のホームディレクトリから

 grepc -R testalias ./

を使用していることがわかり~/.gitconfigました。したがって、解決策はln -s [path_to_desired_.gitconfig] .gitconfig、ホームディレクトリにシンボリックリンクを作成することでした。

git config --list実行するとエイリアスのリストが表示されたのに、実行しようとするとgitが有効なエイリアスとして認識しないという奇妙な発見がありました...

于 2013-01-07T21:59:34.147 に答える
0

gitエイリアスをaliasコマンドに含めることでこれを解決しました.bash_profile

alias gch='git checkout'
alias br='git branch'
alias ci='git commit'
alias gs='git status'
alias gcd='git checkout develop'
alias gcm='git checkout master'
alias gph='git push'
alias gpl='git pull'
alias unstage='git reset HEAD --'
alias ga='git add -u .'
于 2014-07-03T09:46:03.010 に答える