-
Notifications
You must be signed in to change notification settings - Fork 1
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
docs: Improve tool description #2
docs: Improve tool description #2
Conversation
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.
Good call!
I've added you to the repo. You can merge your own PR! 🎉
this got me thinking: is there any situation in a given GitHub Actions runner where you'd need to actually install git? when I made this action i obviously didn't think so but now im reconsidering: what if you're in a container that doesn't have git? is that possible? likely? unlikely? any other circumstances? idk natural follow up: should this action install git? idk |
Yeah - not all containers have Git installed, and I believe Git may not also be installed if running jobs in a Windows host. I suppose, it is relatively uncommon to do this, but usually I do expect a GitHub I don't know if this action should install Git either - I like this action because it properly configures Git for CI, but I don't think I would use it if it tried to actually install Git (I would want to use whatever version is on the system). If this tool were named something like |
Thanks for the invite - I have accepted and will merge this PR :) |
howabout this:
https://github.com/actions/setup-python this would also have the side-effect of allowing a user to specify a version input to install a specific version of git 🎉 the real question is: how do you actually install git lol ideas (mostly from https://github.com/git-guides/install-git):
actually just found https://git-scm.com/downloads which might be what i want? |
That's reasonable - only install git if we specify the version. However, as far as I know, pre-built binaries of Git are not available for Linux. It looks like Looking how other places solved this problem:
Something like Ruby-builder seems like a good approach, if we want this action to Install git. What do you think? |
UNRELATED: after more research: theres this weird pairing where python and nodejs have https://github.com/actions/python-versions => https://github.com/actions/setup-python that might be a bit overcomplicated lol you're right there's no actions/ruby-version repo so they use ruby-builder 👍 after MORE research lol i got this: When you have all the necessary dependencies, you can go ahead and grab the latest tagged release tarball from several places. You can get it via the kernel.org site, at https://www.kernel.org/pub/software/scm/git, or the mirror on the GitHub website, at https://github.com/git/git/tags. It’s generally a little clearer what the latest version is on the GitHub page, but the kernel.org page also has release signatures if you want to verify your download. Then, compile and install:
After this is done, you can also get Git via Git itself for updates:
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git so it looks relatively straightforward. just put that in a .github/workflows/whatever.yml and in an actions4git/git-builder or similar and tada now you get releases of Git? right? |
@jcbhmr Nice research! - I did not know about
Yeah those are my thoughts too. If we just fork it and change some variables, then it might not be too bad
I could not find a
There are some details that might need some thinking about. For example, if we create pre-compiled binaries, and if we naively use the |
I've been meaning to create a general solution for this pre-built binaries problem. In asdf, plugins for PHP and Python will just build every single version (since no pre-built binaries are available). rtx, which uses asdf plugins has this same problem. I've reserved the GitHub organization pre-built for this use for the future, but I'm not sure when I'll get the time to work on it |
This improves the tool description, so there are no expectations that this tool installs Git (it does not look like it does, reading
src/main.ts
. The repository description may need to be changed as well.