vagrant
https://github.com/mitchellh/vagrant
Ruby
Vagrant is a tool for building and distributing development environments.
Vagrant::Environment#lock
This acquires a process-level lock with the given name. The lock file is held within the data directory of this environment, so make sure that all environments that are locking are sharing the same data directory. This will raise Errors::EnvironmentLockedError if the lock can't be obtained.
Edit
git clone [email protected]:mitchellh/vagrant.git
cd vagrant
open lib/vagrant/environment.rb
Contribute
# Make a new branchgit checkout -b -your-name--update-docs-Vagrant--Environment-lock-for-pr
# Commit to gitgit add lib/vagrant/environment.rbgit commit -m "better docs for Vagrant::Environment#lock"
# Open pull requestgem install hub # on a mac you can `brew install hub`
hub fork
git push <your name> -your-name--update-docs-Vagrant--Environment-lock-for-pr
hub pull-request
# Celebrate!