[解決済み] Git でファイルパーミッションを保持する
2022-09-21 14:10:44
質問
で説明されているように、自分のウェブサーバをバージョン管理したいのです。
私のウェブサーバのバージョン管理
で説明したように、ウェブサーバをバージョン管理したいのです。
/var/www directory
. 私の希望は、開発サーバーから github に Web コンテンツをプッシュし、本番サーバーにそれをプルして、残りの時間をプールで過ごすことができるようになることでした。
どうやら私の計画におけるねじれは、Gitがファイルのパーミッションを尊重しないことです(私は試していません、今それについて読んでいるだけです)。これは、異なるボックスが異なるユーザー/グループ設定を持つ可能性があるという点では、理にかなっていると思います。 しかし、もし私が、私のサーバーが同じように構成されていることを知りながら、パーミッションを強制的に伝播させたい場合、何かオプションがあるのでしょうか?または、私がしようとしていることにアプローチする、より簡単な方法がありますか?
どのように解決するのですか?
この
git-cache-meta
SO質問&quotに記載されています。
git - gitが考えるファイルパーミッションを回復する方法は?
"(そして
git FAQ
を参照してください)は、より直接的なアプローチです。
に格納することです。
.git_cache_meta
ファイルにファイルやディレクトリのパーミッションを保存することです。
Git リポジトリで直接バージョン管理されていない別のファイルです。
そのため、それに対する使い方が
$ git bundle create mybundle.bdl master; git-cache-meta --store
$ scp mybundle.bdl .git_cache_meta machine2:
#then on machine2:
$ git init; git pull mybundle.bdl master; git-cache-meta --apply
だから、あなた。
- はあなたのレポを束ねる をバンドルし、関連するファイルのパーミッションを保存します。
- リモートサーバーにこれら 2 つのファイルをコピーします。
- レポをそこにリストアし、パーミッションを適用します。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git が追跡したファイルを .gitignore に登録したまま「忘れる」ようにするにはどうしたらいいですか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Linuxにおけるxinetdサービスの管理方法に関するケーススタディ
-
Kali Linuxのデスクトップの外観スタイルを変更するには? KALIの外観の最適化のヒント
-
Kali Linuxのデフォルトのひげメニューアイコンを変更する方法は?
-
deepin20を使って、ドローイングボードで画像を開くには?deepinのお絵かき掲示板で画像を開く2つの方法
-
makeの低レベルエラー:セパレータストップがない
-
[解決済み] ビーコン待ちでハングアップしたリーバー
-
[解決済み] cronは内部でどのようにジョブをスケジューリングしているのですか?
-
[解決済み] bash sh - command not found [重複].
-
[解決済み] エラーです。Can't open display: (null)と表示されることがあります。
-
[解決済み] git 内のファイルやディレクトリが変更された場合、そのパーミッションを元に戻すには?