When determining whether to remove a symlink during unlinking, we check three things: (a) Is the destination a symlink? (b) Does the destination exist? (c) Does the destination resolve to the source path? However, since we know that the source path exists, (b) is guaranteed if (a) and (c) are true. Thus checking (b) is unnecessary. Similarly, when creating a new symlink during linking, we first check to see if the link already exists by checking the same three criteria. Again, checking (b) is unnecessary here. See also the expanded test coverage in b52b579b. Addendum: although we know that the source path exists during unlinking, it doesn't matter. If the source path does not exist, then we still know we have a broken symlink pointing into the keg we are unlinking, and removing that symlink is still safe.
Homebrew
Features, usage and installation instructions are summarized on the homepage.
What Packages Are Available?
- You can browse the Formula directory on GitHub.
- Or type
brew searchfor a list. - Or visit braumeister.org to browse packages online.
- Or visit
brew descto browse and search packages from the command line.
More Documentation
brew help or man brew or check our wiki.
Troubleshooting
First, please run brew update and brew doctor.
Second, read the Troubleshooting Checklist.
If you don't read these it will take us far longer to help you with your problem.
Who Are You?
Homebrew's current maintainers are Misty De Meo, Adam Vandenberg, Jack Nagel, Mike McQuaid and Brett Koonce.
Homebrew was originally created by Max Howell.
License
Code is under the BSD 2 Clause (NetBSD) license.
Donations
We accept tips through Gittip.
4.6.25
Latest
Languages
Ruby
92%
Shell
5.2%
Roff
2.1%
HTML
0.5%