"checkout" の意味するところ


プログラミングに関する質問というよりは，英語に関する質問かもしれません．

Gitで，`checkout <branch-name>`とはブランチ`branch-name`に”チェックアウト”するコマンドです．  
ちょうど，ホテルのイメージで，ブランチがホテルの各部屋に対応しているような直感的理解をしているのですが，チェックアウトはホテルから出るときの用語だと思います．

なぜブランチに入るコマンドは`checkin`ではなく`checkout`なのでしょうか？




[English Language &
Usage](https://english.stackexchange.com/questions/211634/what-checkout-is-
supposed-to-mean-in-git-checkout-sentence) に類似する質問がありました。

回答によると、`check
out`というコマンドがもともとRCSという古いバージョン管理システムで使われており、（図書館から）本を借りるという意味のようです。

svnやgitはコマンドの名前だけ継承しているので意味がわかりにくいですが、RCSでは`check
out`すると排他的なロックがかかり他の人が編集できない仕様だったので、本の貸出に喩えてこの単語を使っていたのでしょう。




[English Language &
Usage](https://english.stackexchange.com/questions/211634/what-checkout-is-
supposed-to-mean-in-git-checkout-sentence) に類似する質問がありました。

回答によると、`check
out`というコマンドがもともとRCSという古いバージョン管理システムで使われており、（図書館から）本を借りるという意味のようです。

svnやgitはコマンドの名前だけ継承しているので意味がわかりにくいですが、RCSでは`check
out`すると排他的なロックがかかり他の人が編集できない仕様だったので、本の貸出に喩えてこの単語を使っていたのでしょう。

