From: Christian Weisgerber Subject: Re: got status misses unversioned files To: gameoftrees@openbsd.org Date: Fri, 2 Aug 2024 02:30:41 +0200 Christian Weisgerber: > When I move away gnu/llvm/clang/.gitignore, "got status > gnu/llvm/clang/cmake/caches" no longer skips the files in that > directory. The contents of gnu/llvm/clang/.gitignore look innocuous, > though. $ got st gnu/llvm/clang/cmake/caches ===> ignore pattern "**/obj" ===> ignore pattern "**/tags" ===> ignore pattern "**/CVS" ===> ignore pattern "gnu/llvm/clang/" ===> ignore pattern "gnu/llvm/clang/*~" ===> ignore pattern "gnu/llvm/clang/*.orig" ===> ignore pattern "gnu/llvm/clang/*.pyc" ===> ignore pattern "gnu/llvm/clang/.*.sw?" ===> ignore pattern "gnu/llvm/clang/.sw?" ===> ignore pattern "gnu/llvm/clang/" ===> ignore pattern "gnu/llvm/clang/cscope.files" ===> ignore pattern "gnu/llvm/clang/cscope.out" ===> ignore pattern "gnu/llvm/clang//tags" ===> ignore pattern "gnu/llvm/clang/" ===> ignore pattern "gnu/llvm/clang/docs/_build" ===> ignore pattern "gnu/llvm/clang/docs/analyzer/_build" ===> ignore pattern "gnu/llvm/clang/" ===> ignore pattern "gnu/llvm/clang/.vscode" ===> ignore pattern "gnu/llvm/clang/.vs" ===> ignore pattern "gnu/llvm/clang/" Hah! We need to skip blank lines in .gitignore: ===> ignore pattern "**/obj" ===> ignore pattern "**/tags" ===> ignore pattern "**/CVS" ===> ignore pattern "gnu/llvm/clang/*~" ===> ignore pattern "gnu/llvm/clang/*.orig" ===> ignore pattern "gnu/llvm/clang/*.pyc" ===> ignore pattern "gnu/llvm/clang/.*.sw?" ===> ignore pattern "gnu/llvm/clang/.sw?" ===> ignore pattern "gnu/llvm/clang/cscope.files" ===> ignore pattern "gnu/llvm/clang/cscope.out" ===> ignore pattern "gnu/llvm/clang//tags" ===> ignore pattern "gnu/llvm/clang/docs/_build" ===> ignore pattern "gnu/llvm/clang/docs/analyzer/_build" ===> ignore pattern "gnu/llvm/clang/.vscode" ===> ignore pattern "gnu/llvm/clang/.vs" diff /home/naddy/got commit - cbae186176b82efbf747a1486addb8b52c664651 path + /home/naddy/got blob - 94cb5018eb8bd148ea52e237479e027fabca1b14 file + lib/worktree.c --- lib/worktree.c +++ lib/worktree.c @@ -3742,6 +3742,10 @@ read_ignores(struct got_pathlist_head *ignores, const if (linelen > 0 && line[linelen - 1] == '\n') line[linelen - 1] = '\0'; + /* Skip blank lines. */ + if (line[0] == '\0') + continue; + /* Git's ignores may contain comments. */ if (line[0] == '#') continue; -- Christian "naddy" Weisgerber naddy@mips.inka.de