---
# System prepended metadata

title: 私がgitで失敗した話
tags: [github, '2023-06-30', git]

---

## IT屋の作業環境の劇的な進化が止まらない

私はレンタルサーバーのユーザー歴１８年になります。
その間、数多くのホスティング会社のお世話になり、ほろ苦い味や感動ものも含めて多くの体験をしました。

特に近年では、ローカル開発環境ツールとして代表的な存在になっているMSCodeエディタの拡張機能を活用することによって、レンタルサーバーを直接編集可能となり、サイト開発環境の利便性が、昔とは別世界レベルで向上したと実感しています。

それと並行してバージョン管理作業についても、ネット上のGitHub（リモートリポジトリ）、ローカル、そしてレンタルサーバーの三か所を連携できるという夢のような作業環境が定着しつつあります。

## 私がgitで失敗したこと

📌　なんの意識もなくレンタルサーバーに置いたgitには、なんと一万件以上の更新保留の変更が溜まってしまった。

これだとVSCodeのgit拡張機能もパンクして、自動で機能制限がかかってしまいます。

🐯　そこで、無意識でレンタルサーバーの全体のルートに設置してしまった.gitファイルをなかったことにし、あたらめて適切な規模（例えばサイトやアプリ単位）の中にgitを設定するという方針で改善したいと思いました。


📌失敗をリカバリーする手順の概要

現状ではGit管理範囲が広すぎるとのことで、Git管理を取り消して、改めて小さなサブディレクトリ単位にgitを設定したいとのことですね。

1. Git管理を取り消すには、次の手順を実行します。
    - リポジトリのルートディレクトリに移動します。
    - 次のコマンドを実行して、`.git` ディレクトリを削除します。
    ```
    $ rm -rf .git
    ```
    これで、Git管理が取り消されます。

2. 改めて小さなサブディレクトリ単位にgitを設定するには、次の手順を実行します。
    - Git管理したいサブディレクトリに移動します。
    - 次のコマンドを実行して、新しいGitリポジトリを作成します。
    ```
    $ git init
    ```
    これで、指定したサブディレクトリが新しいGitリポジトリとして管理されるようになります。

### 留意点

Git管理を取り消す際には、次の点に注意してください。

- `.git` ディレクトリを削除することで、Git管理が取り消されますが、これによりリポジトリの履歴情報も削除されます。履歴情報が必要な場合は、削除する前にバックアップを取っておくことをお勧めします。
- Git管理を取り消した後、ファイルの内容は変更されませんが、変更履歴やブランチ情報などは失われます。そのため、Git管理を取り消す前に、必要な情報を確認しておくことが重要です。




