背景
由於公司在內部自建了一個Gogs版本管理服務,所以平時項目代碼都是放到這上面進行管理。但是我想在GitHub上對這些項目做些備份。由於GitHub只能創建3個免費倉庫,所以需要把這些項目都放在一個文件夾裏上傳。
推薦
推薦使用Git圖形化界面管理軟件 tortoisegit,不用記一大堆命令
具體要實現的效果如下:
- 根目錄 D:\Projects 它的remote 是GitHub 的某個倉庫
- 在Projects文件夾下面有幾個其他的項目Robot, Repo等,它們的來源(origin, remote)是內部版本管理Gogs。
- 這樣的話,我們可以平時在內部進行fetch,pull,push等操作,在子文件夾內部commit,pull 之後,就可以在根目錄下D:\Projects進行push,上傳到GitHub倉庫進行備份
倉庫結構
- 在根目錄D:\Projects下有個 .git 文件夾,這是git 在create repo 的時候自動產生的。我在摸索的過程中發現,一旦在根目錄下create repo之後,在子文件夾裏都不能進行clone,create repo 的操作。
- 在子文件夾裏有要有.git 文件夾來與內部Gogs連接
Projects
子文件夾
具體做法
- 在Projects文件夾外部clone或 create repo, 然後將生成的 .git 文件夾拷貝到 D:\Projects\Repo 3 下
這樣就實現了 Projects 與 Repo 3有不同的remote