Git 2.3が登場しました

ご挨拶、同僚! 今朝、githubは新しくリリースされたバージョンのgitに関する詳細な記事を公開しました。 いつものように、 公式ウェブサイトでそれを手に入れることができます。カットの下で、新しくて興味深いものの簡単な翻訳:プッシュデプロイ、SSHパラメーターの手動制御、cronスクリプトがgitクライアントでハングするのを防ぐ方法などがあります。







プッシュして展開





受信したプッシュが自動的にチェックアウトするようにリモートリポジトリを構成する機能(もちろん、このコンピューターにローカルな変更がなかった場合)。 この機能は、テストおよび内部展開に便利です。追加のスクリプトをインストールしたり、サーバーにプッシュして作業コピーのファイルを自動的に変更したり、リポジトリに追加したりする必要はありません。



作者は、多くの副作用があるため、この機能を運用サーバーの展開に使用することは推奨されないことを警告しています。





すでに複製されたローカルリポジトリに基づく高速複製





新しい--dissociateキーを使用すると、クローン作成中に--referenceで指定されたローカルリポジトリから必要なファイルを選択できます。これにより、ディスク上のどこかに目的のリポジトリのコピーが既にある場合、クローン作成時間とネットワーク負荷を大幅に削減できます:



git clone --reference ../oldclone --dissociate https://github.com/gitster/git.git
      
      







より保守的なデフォルトのgit push動作





最近、ブランチをプッシュするとき、gitは常に「push.default」の設定を推奨し、すぐにデフォルトの動作が変更されることを示唆していることを覚えていますか? 変更されました。 ローカルブランチの名前がアップストリームブランチの名前と異なる場合、gitは間違ったブランチのプッシュから保護するために、リモートを指定せずにプッシュを拒否します。



 git checkout -b experimental origin/master git commit -a -m 'Experimental changes' git push #      -     push  'experimental',    'master'.
      
      







SSH接続パラメーターを手動で設定できるようになりました





GIT_SSH_COMMAND環境変数を使用して、gitがsshを使用する方法を正確に構成できるようになりました。 最後に、ユーザー全体の「〜/ .ssh / config」を変更せずに、異なるリポジトリに異なる秘密鍵を簡単に作成できます。



 GIT_SSH_COMMAND='ssh -i git_id' git clone host:repo.git
      
      







自動化中にユーザー入力を無効にする機能





GIT_TERMINAL_PROMPT環境変数を0に設定すると、ユーザー入力を無効にできます。 これは、自動化スクリプトからgitが呼び出され、ユーザー入力が暗示されていない場合に便利です。現在、承認エラーが発生した場合、gitはユーザー名/パスワードを要求せず、cronスクリプトを中断します。



ささいなこと







全部





何かを見逃したり、誤解したり、間違って翻訳したりした場合は、書きます。



All Articles