git submodule的共用user問題

2021-09-02 13:54:46 字數 1093 閱讀 1401

新增submodule時如果git url出現具體的使用者名稱,比如admin使用者:

git submodule add ssh://admin@127.0.0.1:29418/myproject.git aaa/bbbb

那麼問題來了:

如果submodule的url出現具體的使用者名稱,那麼其他電腦上clone時必須要配置該使用者的ssh key,也就是說一台電腦上要配置兩個ssh key(配置方法參見:

這樣搞比較麻煩。

有一種不正規的解決辦法:clone以後,修改本地的.gitmodules檔案中的使用者名稱。但這樣比較危險,因為.gitmodules時可以提交的,所以,萬一其他電腦上不小心把.gitmodules提交了,就會影響其他同事了。

想到乙個科學的辦法:

修改~/.ssh/config,配置兩個host,兩個host除了alias別名不一樣,其他都一樣,相當於模擬兩個使用者的情況,例如:

hostalias1

hostname 127.0.0.1  

port 29418  

user user001  

identityfile /c/users/administrator/.ssh/id_rsa  

hostalias2

hostname 127.0.0.1  

port 29418  

user user001  

identityfile /c/users/administrator/.ssh/id_rsa  

用別名新增submodule

git submodule addalias2:myrepositoyr.git aaa/bbbb

這樣新增後,push到伺服器上,其他機器上更新不會出現干擾,其他機器只需要用alias2作為別名、自己的ssh key作為identityfile

配置config即可。

git submodule的簡單使用

專案中經常會使用到第三方的 git 庫,直接把第三方的版本庫合併到自己的庫中。目前做node.js koa2 時需要使用工程整合的mongodb models檔案,所以需要將koa2工程引用外部工程模組。1.1 js倉庫 test git 1.2 models倉庫 model 建立完兩個倉庫。獲取 ...

Git submodule 命令簡介

摘要 在.git config和.gitmodules中記錄的子模組倉庫的遠端位址和路徑,然後使用乙個特殊的模式為160000的檔案來記錄子模組倉庫當前的commit id git submodule add origin submd repos lib2.git libs lib2 新增遠端ori...

git submodule使用記錄

首先建立乙個子模組倉庫 當做公共元件模組son 然後在現有的專案 p1,p2 中使用 git submodule add git位址當更新p1中son的東西時候,需要在p1中son目錄裡提交,p1直接提交會報 所以需要單獨進入專案中提交子模組 1.採用遞迴方式一次性轉殖所有 git clone 位址...