我正在開發一個通用的共享服務器,我ssh進入和(1)沒有git和(2)我沒有管理員權限來自行安裝git。如果我想版本化我的代碼,我必須使用SFTP將其退回到本地計算機,提交更改本地文件,然後推送到原始文件。沒有本地.git而推送到原點?
有沒有辦法添加+提交+將新保存的代碼直接推送到我的git倉庫而無需本地.git?我是唯一一個從事這個項目的人,所以沒有衝突的問題。
我正在開發一個通用的共享服務器,我ssh進入和(1)沒有git和(2)我沒有管理員權限來自行安裝git。如果我想版本化我的代碼,我必須使用SFTP將其退回到本地計算機,提交更改本地文件,然後推送到原始文件。沒有本地.git而推送到原點?
有沒有辦法添加+提交+將新保存的代碼直接推送到我的git倉庫而無需本地.git?我是唯一一個從事這個項目的人,所以沒有衝突的問題。
您可以:
在第二種情況下,你可以在你的bash腳本使用的東西像
#!/bin/bash
sshpass -p remoteuser ssh -X -l -t [email protected] << EOF
cd your/project/path
git commit -a -m "Automated commit"
git push origin
EOF
,並從遠程計算機調用它。
如果沒有衝突和工作/推送當前分支,該腳本應該可以工作。
還有另一種方法。 您可以將服務器上的存儲庫根目錄安裝到本地目錄中,然後在已安裝的目錄中創建本地.git倉庫,添加遠程服務器並最終全部推送。
通過這種方式,git本地回購被創建到服務器(不是本地)。 要安裝使用SSHFS
mkdir ~/mnt
sshfs [email protected]_ip:path_to_root_of_repo ~/mnt
chmod +x ~/mnt
你可以在本地文件夾,而不是一個系統中的一個安裝的git,並引用它。 – Jepessen
我擔心@Jepessen是正確的,唯一的出路就是在某處安裝Git。 –