keybase / keybase/keybase-issues
'dir sign' correctly follows directory .gitignore but not global excludes
- Dominant language
- No language data
- Stars
- 899
- Forks
- 40
- PR merge metrics
- No merged PRs in 30d
Description
^^ that says it all. I'm usually living in Python land, so I usually have a virtualenv called `env` in my project directories. I ignore `env` and `__pycache__` globally (as well as a few other things, like `*.swp`). I'm never committing these files, so they will never be pushed up to a remote git branch (like Github). The command I'm actually running is:
```
keybase dir sign -p git
```
If I didn't notice the error, then the SIGNED.md would attest to the presence of files which would not be present in the pushed repo (a virtualenv, `__pycache__`, test data, etc).
This could potentially leak filenames for sensitive things (maybe someone has `./test_data` in their global excludes file, and there's customer data in there or something). In the case of a virtualenv it also adds a huge amount of useless data (every file in every installed package) to `SIGNED.md`.
Note: I have `~/.gitconfig` symlinked to a file in a dotfiles repo, if that makes any difference. The relevant file is in my dotifles repo [here](https://github.com/aliceriot/dotfiles/blob/master/git/.gitconfig).
A workaround is obviously to add these things to every per-project `.gitignore`, but I'd like to not do that, if possible.
Thanks for reading!
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the `keybase dir sign -p git` command's handling of directory `.gitignore` files and global Git excludes. Reproduce the issue with globally ignored `env`, `__pycache__`, or `*.swp` entries; done means signing excludes those paths consistently with Git and they do not appear in `SIGNED.md`.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100