-1

リモートサーバーでホストされているプロジェクトがあり、開発はgitで行われ、リリースの時期が来たら、更新をリポジトリからサーバーにアップロードする必要があります。これを行うには、tarballをダウンロードするか、完全なgitをインストールする必要がありますサーバーへの配布ですが、どちらも実際には便利ではありません。サーバー上で git は必要ありません。開発も行っていません。変更もまったく行っていません。リポジトリ ファイルはゴミにすぎません。必要なのはpull.

では、リポジトリのコミット履歴を読み取り、現在のバージョンを最新のリモートと比較し、必要なすべてのパッチをダウンロードしてインストールするだけのツールはありますか?

4

3 に答える 3

2

git のインストールが最適なオプションです。必要ないと思うかもしれませんが、システム全体を持っていることには多くの理由があります。

  • 説明したタスクを 1 行のコードで実行できます
  • git log を使用して、チェックアウトしたソフトウェアのバージョンを正確に確認できます。
  • コードのブランチ間を即座に切り替えることができ、再ダウンロードやファイルの移動をいじる必要はありません。
  • ローカルで再現できないバグがある場合は、本番コードでデバッグ/エラー ログ変数をオンにしてから、ブランチを切り替えて 1 つのコマンドで本番コードに戻すことができます
  • サーバーに変更を加えた場合は、git diff または git status ですぐに確認できるため、デバッグを有効にしてから、どこで変更したかを忘れることはありません。

リポジトリの履歴全体は必要ないとおっしゃっていますが、大規模なプロジェクトであっても、本当にそれほど容量が不足しているのでしょうか? ストレージは非常に安価です。

サーバーで作業を行うつもりはありませんが(サーバーにはレポにプッシュする権限さえありません)、サーバー上で定期的にgitを使用しています。

編集: あなたの Occam's Razor のコメントについて - 私は人々が定期的なオフサイト バックアップに対して同じ「厳密には必要ではない」アプローチを取っているのを見てきました。うまく終わらなかった(;_;)

于 2012-02-20T15:03:04.423 に答える
0

解決しようとしている問題が、サーバーにいくつかのファイルの最新バージョンを取得すること(そこでの変更を上書きすること)である場合、単に使用することを検討しましたrsyncか?

于 2012-02-20T15:20:12.117 に答える
0

git をインストールすることをお勧めしますが、これができない理由がある場合は、ViewGitを使用できます。コミット履歴の読み取り、ファイルの比較、およびダウンロードを行うことができます。

于 2012-02-20T14:54:30.497 に答える