=========== Git远程仓库 =========== 远程仓库,即远程版本库。 程序员A 程序员B _____________________ ____________ | /3 | | | |本地仓库 2------------- | 本地仓库 | | ^ \1 | | | | | | |commit | | | | | | | | | | | | | 缓存区 |checkout| | | 缓存区 | | ^ | | | | | | |add | | | | | | | | | | | | |工作空间<--- | --->工作空间 | |_____________________| |____________| - 程序员A可以通过checkout将工作空间同步到版本库中的2版本 - 程序员B如何将他的工作空间同步到程序员A版本库中的2版本? ____________ | /3 | | 远程仓库 2----------- | \1 | | |____________| | ^ | 程序员A push| 程序员B | _____________________ | ____________ | | /3\ | | | | | |本地仓库 2------------- | 本地仓库 | | | ^ \1/ | | | | |pull | |commit | | | | | | | | | | | | | 缓存区 |checkout| | 缓存区 | | | ^ | | | | | | |add | | | | | | | | | | | | |工作空间<--- | | 工作空间<--- |_____________________| |____________| - 程序员A将本地仓库中的特定版本push到远程仓库 - 程序员B将远程仓库中的特定版本pull到工作空间 - 本地仓库解决的是版本管理问题,可以随时回退到历史状态 - 远程仓库解决的是协同开发问题,避免参与者之间发生冲突