Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

git grep への対応を検討する #809

Open
m-tmatma opened this issue Mar 22, 2019 · 4 comments
Open

git grep への対応を検討する #809

m-tmatma opened this issue Mar 22, 2019 · 4 comments

Comments

@m-tmatma
Copy link
Member

m-tmatma commented Mar 22, 2019

要望機能

git grep に対応したい。

背景

以前、.gitignore のファイルを無視する機能の提案があったが、
#75 (comment)

.gitignore のファイルをパースするのも面倒だし、放置されているが、
git grep という機能がある。
これは指定ファイルを無視するのではなく、逆に git に登録されているファイルから
検索するもので、同等のことができる(はず)。

https://qiita.com/masashi127/items/2e103c3fba9d1b058961 を見ていたら
git ls-files -c というコマンドがあり、これを使えば簡単に実装できそうな
気がするので issue 登録します。

参考サイト

git grep

git grep に関しては以下のページがわかりやすい

Gitを導入しているプロジェクトならGrepが使えるって知ってました?
https://sugimotonote.com/2018/01/22/git-grep-command/

git ls-files

git ls-files
https://qiita.com/zimathon/items/d964c4b3cc688cb2d114

Git超絶まとめ
https://qiita.com/masashi127/items/2e103c3fba9d1b058961#ls-files

git findじゃなくてgit ls-files
https://qiita.com/darai0512/items/5f57ea6eb7c2f089c264

git pathspecを使った高度なgrep
https://qiita.com/darai0512/items/c2cf3719ec0903ab8002

@m-tmatma
Copy link
Member Author

ls-files のところの説明が役に立つ
https://qiita.com/masashi127/items/2e103c3fba9d1b058961#ls-files

@m-tmatma
Copy link
Member Author

m-tmatma commented Apr 1, 2019

まだ、具体的には検討出来てないですが、
現状では、grep を行う関数に事前に作成して渡す構成になってますが、
除外条件で関数ポインタを渡して処理するようにしたら対応できるんじゃないかと思ってます。

@berryzplus
Copy link
Contributor

Grep検索(置換)の機能拡張の話でいいですか?
(何でここにissue立てたか初見では分かりませんでした。

対象フォルダ配下に git clone なフォルダが含まれる場合に
Gitの無視ファイルを考慮するようにしたい、と理解しました。
そういう需要もあると思うので、あってもいいと思います。

懸念としてあるのは、このissueを解決するための機能を追加したら、
「インストーラーにGit for Windowsを同梱する」にならないか?ってことです。
(Git for Windowsのファイルサイズは20MBくらいです。)
「対応するのはGitだけでええんか?」という話でもあります。

この機能は「欲しい人が気軽に選択できる追加機能」として入れたい感じです。

いったい何をプラグインしたら良いかを考えるとこからなので、開発規模はかなり大きいですがやりがいはあると思います。

@m-tmatma
Copy link
Member Author

m-tmatma commented Apr 3, 2019

対象フォルダ配下に git clone なフォルダが含まれる場合に
Gitの無視ファイルを考慮するようにしたい、と理解しました。

そうです。
置換は想定してなかったですが、あってもいいと思います。

懸念としてあるのは、このissueを解決するための機能を追加したら、
「インストーラーにGit for Windowsを同梱する」にならないか?ってことです。

git.exe がパスが通っていたら有効になる機能として想定しています。
そうすればそんなに複雑にならないと考えています。

まあ、どちらにしても v2.5.0.0 以降の機能と考えています。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants