以下を実行するcgitというbashスクリプトがあります。子特定の子の場合買戻契約(に敷設/.git
):
#!/bin/bash
cd /;
sudo git $@ > /dev/stdout
私はこれを重要なシステムファイルを追跡するために使用します。
cgit add /etc/rc.conf
問題は、私が存在するディレクトリに関連するエントリを追加しようとするときです。たとえば、次のようになります。
cd /home/user
cgit add .ssh/config
Git/.ssh/config
リポジトリに追加しようとしています/.git
。
どのような提案や回避策がありますか?
答え1
--git-dir
マニュアルページでを使用するようにcgitスクリプトを更新します。
--git-dir=<path>
Set the path to the repository. This can also be controlled by
setting the GIT_DIR environment variable. It can be an absolute
path or relative path to current working directory.
だからそれは次のようになります:
#!/bin/bash
sudo git --git-dir=/.git $@ > /dev/stdout
FTR、まだ試していません。
答え2
使用する方が良いマネージャーをお待ちください自己開発したソリューションではなく、etckeeperは多くの問題を非常によく解決します。複数のLinuxディストリビューションでパッケージ化されており、ソースから簡単にビルドすることもできます。
Debian ベースのシステムの非常に良い機能は、パッケージのインストールまたはアップデートの前後に自動的にコミットする apt との統合です。これは、ユーザーが直接変更したものとパッケージの更新による変更を区別するのに役立ちます。また、(オプションで)毎日自動送信を行います。