4

私は iOS アプリを設計および構築しています。これは、ローカルの git リポジトリでバージョン管理されています。これまでのところ、Photoshop アセットなどでいっぱいの「Design」などの大きなフォルダを含め、すべてをバージョン管理下に置いています。リモートの場所をレポに追加しましたが、明らかに Design フォルダーをリモートにコミットしたくありません。

.gitignore以下のファイルを作成しました。

# File Extensions #
###################
*.psd

# Folders #
###########
/Design/*

そのフォルダーとPhotoshopドキュメントを除外する必要があるのはどれですか?

既存のデザイン フォルダのバージョンを解除するにはどうすればよいですか (git rm実際にはファイルを削除します!)。また、バージョンを解除すると、膨大な .git フォルダーが自動的に縮小されますか?

どうもありがとう。

4

1 に答える 1

12

git を使用するgit rm --cached design/と、ファイルが保持されます。

履歴全体からそれを削除するには、次のようなものを試すことができます:

$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch design/' \
  --prune-empty --tag-name-filter cat -- --all

$ rm -rf .git/refs/original/

$ git reflog expire --expire=now --all

$ git gc --prune=now

$ git gc --aggressive --prune=now

参照: https://help.github.com/articles/remove-sensitive-data

于 2012-11-28T16:12:39.160 に答える