-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
ci: avoid d/f conflict in vs/master #2618
ci: avoid d/f conflict in vs/master #2618
Conversation
It already caused problems with the test suite that the directory containing `git.vcxproj` is called the same as the Git executable without its file extension: `./git` is ambiguous, it could refer both to the directory `git/` as well as to `git.exe`. Now there is one more problem: when our GitHub workflow runs on the `vs/master` branch, it fails in all but the Windows builds, as they want to write the file `git` but there is already a directory in the way. Let's just go ahead and append `.proj` to all of those directories, e.g. `git.proj/` instead of `git/`. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
f22aed1
to
8b2d27b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good except for two white space changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes look & sound sensible, though I haven't tested them myself.
I think I recognise that run 😉. Thank you for working on this so quickly. I think the |
When we commit the template directory as part of `make vcxproj`, the `branches/` directory is not actually commited, as it is empty. Two tests were not prepared for that situation. This developer tried to get rid of the support for `.git/branches/` a long time ago, but that effort did not bear fruit, so the best we can do is work around in these here tests. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
The convention in Git project's shell scripts is to have white-space _before_, but not _after_ the `>` (or `<`). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
d2cc0c6
to
60fe2fd
Compare
It actually stems from cogito... a long-defunct front-end to Git, back from the days when Linus still thought that Git would be almost exclusively plumbing, and everybody would write their own wrappers around it. Maybe at some stage I will have learned enough diplomacy to get something like https://lore.kernel.org/git/cover.1494509599.git.johannes.schindelin@gmx.de/ off the ground. For now, I just have to live with |
BTW if you're interested to know why the |
@PhilipOakley would you care to re-review the latest two commits? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
5a818a2 LGTM. (Not sure if the "approve" button would do too many things...)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
60fe2fd LGTM!
It wouldn't do too many things, it would instead record your LGTM in a more formal manner ;-) |
I'll just go ahead and merge it ;-) |
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
…-in-vs/master ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
ci: avoid d/f conflict in vs/master
As can be seen in this run, our current GitHub workflow does not play well with our
vs/master
branch: we commit.vcxproj
files in directories named identically to the executables' names. This works on Windows because the executables actually have an additional.exe
filename suffix. But on Linux/macOS, the compilation fails because they cannot write, say,git
: there is already a directory under that name.Let's fix this by renaming those directories, appending the suffix
.proj
. Oh, and work around.git/branches/
problems (why exactly do we still create this directory?).