gitdown icon indicating copy to clipboard operation
gitdown copied to clipboard

Crashes on new branch

Open c-vetter opened this issue 5 years ago • 4 comments

When creating a new branch, which consequently has no remote branch, I get this behavior:

npx gitdown ./README_src.md --output-file ./README.md
Unhandled rejection Error: Branch ("issue-36") definition does not exist in the config.

This has previously been noted in #27 but closed without change. I think, this is undesirable behavior.

I'd like to get a more understandable error message instead of an exception, if failure is the expected behavior for new branches. Ideally, I'd like this to work for new branches as well, but since git itself won't setup tracking without the remote branch, that's probably out of scope for gitdown.

It would be nice to get a warning if no URLs are needed, but an error when this prevents building.

Also, when the README file cannot be updated, gitdown should fail with a non-zero exit code. My use-case is that gitdown updates my README.md from a README.src.md via commit hook. If that goes through despite not doing its work, that is a recipe for disaster.

c-vetter avatar Nov 29 '19 12:11 c-vetter

Are you available to contribute?

gajus avatar Nov 29 '19 15:11 gajus

Yes, starting today 🙂

c-vetter avatar Dec 02 '19 08:12 c-vetter

Hey, y'all.

Would love to use this; am running into the same issue here. I also have my branches on both my origin and upstream remotes:

gitdown ./getting-started-ssi-service/GETTING_STARTED_SSI_SERVICE.md --output-file ./build/GETTING_STARTED_SSI_SERVICE.md
/home/alr/.nvm/versions/node/v17.3.0/lib/node_modules/gitdown/node_modules/gitinfo/dist/gitinfo.js:100
     throw new Error('Branch ("' + branchName + '") definition does not exist in the config.');
           ^

Error: Branch ("jbang-gitdown") definition does not exist in the config.
   at Object.gitinfo.getRemoteUrl (/home/alr/.nvm/versions/node/v17.3.0/lib/node_modules/gitdown/node_modules/gitinfo/dist/gitinfo.js:100:13)
   at Object.gitinfo.getUsername (/home/alr/.nvm/versions/node/v17.3.0/lib/node_modules/gitdown/node_modules/gitinfo/dist/gitinfo.js:132:53)
   at Object.gitinfo.getGithubUrl (/home/alr/.nvm/versions/node/v17.3.0/lib/node_modules/gitdown/node_modules/gitinfo/dist/gitinfo.js:51:44)

Would be great to run this locally without regard to what's going on with my remote branches.

Thanks!

ALRubinger avatar Aug 08 '22 06:08 ALRubinger

Note: gitdown succeeds when my remote branch is tracked in .gitconfig:

[branch "jbang-gitdown"]
	remote = origin
	merge = refs/heads/jbang-gitdown

So that's a workaround for those following. Still I'd like to avoid this error when the remote branch is not being tracked in this way; IMO the operation should simply run off the local filesystem.

ALRubinger avatar Aug 08 '22 06:08 ALRubinger