-
-
Notifications
You must be signed in to change notification settings - Fork 9.9k
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
generic way to brew install foo --commit=sha
#1738
Comments
That sounds good in theory. In practice, however, since software can change dramatically (install methods, dependencies, included tools) between versions, and formulas change even more than the software itself (to accommodate better ways to do things), your suggestion would either cause constant breaks (if it only changed, say, Both of those would be a support nightmare. There’s a reason homebrew/versions exists. |
|
That doesn’t change the fact this would be a support nightmare. At least with homebrew/versions you can say “lets support this version correctly”. Your suggestion would automatically consider old versions of formulae that may themselves be broken or seemingly randomly not exist. You can already do what you want in a more manual way. In github, go to the formula you want and click to check its history. Find the state you want, click to show the raw file and copy the URL. |
We used to do this and, as @vitorgalvao points out, it was a support nightmare. It'll never be officially supported again because we cannot apply fixes to an arbitrary Git commit and old versions typically need updates to work on newer versions of macOS. If Homebrew/versions does not meet your needs (and it's worth noting in the future it will be merged into Homebrew/core but we'll never provide all old versions for all packages) you could either submit PRs to add the versions you want or maintain your old tap with old versions (in which you may well see why we're unwilling to support old versions indefinitely). As for newer versions, |
Is there a way to install any package at a specific git commit or git tag ?
If not could we support it?
eg: I'd like to be able to do:
And formula for package
foo
would accept this git commit/tag as an argument and install that (generalizing thebrew install foo --head
command)The text was updated successfully, but these errors were encountered: