gitc.id⊙ “用於git的電動工具” ⊙版權所有©2021 Jeremy Carter < [email protected] >

該軟件的使用受包括的MIT許可證(GitHub Mirror)的條款約束。
ssh和rsync快速部署新的git遙控器,您可以將其推入其中的gitcid工具。git存儲庫,並在其中添加gitcid工具。gitcid工具播放在每個本地或遠程git Repo中,您可以使用一個命令將它們添加到任何現有的存儲庫中。gitcid時,它會在docker-compose (啟動工作)的幫助下獲得內置的CI/CD功能。yaml格式指定您的CI/CD pipelines ,如果您以前使用過其他CI/CD系統,則可能對您感到舒適。dedicated git servers部署到ssh遠程位置。建議將它們安裝在LAN上的一些專用設備上,例如Raspberry Pi運行Raspberry Pi OS (aarch64 or armhf) 。常規的Debian (amd64)目標也得到了支持。也許它也適用於一些Debian-derived發行版,但尚未進行測試。git server ,它將自動與LAN的其餘部分共享其發現的所有git repos 。GitWeb UI瀏覽您的共享git repos 。 GitCID如果系統缺失,則將嘗試自動為您安裝它們,但是如果失敗,您可能需要自己安裝它們:
pip或pip3中找到的版本(Python的軟件包管理器)是正常工作的版本。根據您的操作系統,還需要更多的依賴項,但是在大多數情況下應自動安裝它們。有關完整的詳細信息,請參見.gc/.gc-deps中的文件。
確保您已經安裝了git和curl ,然後運行以下命令:
source <( curl -sL https://tinyurl.com/gitcid )當此命令完成時,它將在當前目錄中創建一個名為gitcid的新文件夾,然後將您帶入此新文件夾。
(可選)或者,如果您願意,可以運行此命令:
git clone https://gitlab.com/defcronyke/gitcid.git && cd gitcid && echo " " && .gc/init.sh -h在gitcid文件夾中,運行此命令:
.gc/new-remote.sh ~ /repo1.git~/repo1.gitgit clone命令,如果一切正常工作,您可以使用該命令在輸出底部克隆新的存儲庫。您也可以在新的遠程回購位置使用遠程ssh路徑,而不是本地路徑:
.gc/new-remote.sh git1: ~ /repo1.git一個示例git clone命令來克隆您的git repo可能看起來像這樣:
git clone git1: ~ /repo1.git && cd repo1這只是克隆git存儲庫的常規方式。
當您製作新的遠程存儲庫時,您還將獲得一個命令,可以用來將GitCid功能添加到您從遙控器克隆的本地克隆回購中。如果您需要,這是同一命令。運行此命令時,請確保您在本地存儲庫中:
source <( curl -sL https://tinyurl.com/gitcid ) -e上面的命令將在.gitignore'd文件夾中添加Gitcid: .gc/
從Gitcid Repo的頂級目錄中運行此命令,以獲取使用信息:
.gc/init.sh -h從您想安裝GitCID的現有GIT倉庫的頂級目錄中運行此命令(它適用於常規和裸倉庫):
source <( curl -sL https://tinyurl.com/gitcid ) -e注意:遠程目標需要安裝rsync 。
從GitCID存儲庫的頂級目錄中運行這些.gc/init.sh命令,以製作新的Gitcid Git存儲庫。
在當前目錄中使用默認名稱為“ repo ”的新本地git repo:
.gc/init.sh製作新的本地git倉庫:
.gc/init.sh ./local-repo在目標SSH服務器路徑上製作新的遠程git倉庫:
.gc/init.sh user@host: ~ /remote-repo立即製作幾個新的GIT存儲庫本地和/或遠程遠程存儲庫:
.gc/init.sh local-repo1 user@host: ~ /remote-repo1 user@host: ~ /remote-repo2 ./local-repo2立即製作幾個新的Bare Git存儲庫(適合使用AS GIT遙控器),本地和/或遠程:
.gc/init.sh -b user@host: ~ /remote-bare-repo1.git local-bare-repo1.git ./local-bare-repo2使用此項目的工具,在目標SSH位置安裝GIT服務器:
https://gitlab.com/defcronyke/git-server
目前支持的目標平台:
平台支持願望清單(如果您想幫助增加這些支持,請隨時測試並貢獻修復建議):
也許它可以在其他基於Debian或Debian的平台上使用,但這尚未經過測試。
警告:出於您自身的風險!您只能在本節中運行命令,將專用的Git服務器安裝到新鮮安裝的Linux發行版上,該功能僅用於僅用作為專用的Git服務器!這將自動安裝一些依賴項,並執行一些您可能不希望在用於其他目的的設備上具有的系統配置。自行使用!你已經被警告過!
ssh在bash終端git server運行以下命令:
source <( curl -sL https://tinyurl.com/gitcid ) && .gc/new-git-server.sh -o pi@git1 $USER @gitlab通常,它只是有效的,並且在上面使用的-o標誌後,它應該為安裝完成後在網絡上找到的每個GIT服務器自動打開一個網頁。有關更多信息和其他選項,請參見下一部分。
上面的示例還將安裝gitcid ,這使與GIT服務器一起工作變得更加容易。如果您已經安裝了gitcid ,則無需再次安裝它,因此,在這種情況下,您可以省略上述命令的第一部分,例如:
.gc/new-git-server.sh -o pi@git1 $USER @gitlab只需在嘗試運行任何gitcid命令之前,請先確保您首先進入gitcid/文件夾(或任何gitcid啟用Git Repo)。
安裝gitcid:
source <( curl -sL https://tinyurl.com/gitcid )如果成功,您現在將進入剛下載的./gitcid/文件夾中。您需要在此文件夾中進行步驟2。
在給定的ssh目標位置將新的Git服務器安裝到專用設備上:
.gc/new-git-server.sh -h.gc/new-git-server.sh git1 git2 gitlab.gc/new-git-server.sh -o git1 git2 gitlab.gc/new-git-server.sh -y git1 git2 gitlab.gc/new-git-server.sh -yo git1 git2 gitlab.gc/new-git-server.sh -s git1 git2 gitlab.gc/new-git-server.sh -so git1 git2 gitlab~/.ssh/config文件中使用了每個主機名的SSH配置,但是如果您願意,可以在下面的命令中為每個目標添加一個用戶名。您可以為上述任何各種命令中的任何一個執行此操作,例如: .gc/new-git-server.sh -yo pi@git1 pi@git2 $USER @gitlab如果所有內容都按預期運行,則您的git服務器現在可以使用。有關更多詳細信息,請參見終端中的輸出。在並行安裝期間(默認行為,除非使用-s標誌變體),如果未在目標上配置非相互作用的sudo支持,則係統將返回到需要手動輸入SUDO密碼的任何目標的順序安裝模式。成功地鍵入SUDO密碼後,將嘗試在目標上嘗試使用無密碼的Sudo配置,以使與該目標的任何未來相互作用都可以完全自動化。
這是一些如何使用Git服務器進行一些常見的GIT相關任務的示例。以下命令應從gitcid/文件夾內部或任何gitcid啟用Git Repo內部運行。
在git服務器上創建一個新的git遠程存儲庫,例如一個名為repo1.git的倉庫git1上的回購。
.gc/new-remote.sh git1:repo1新創建的遠程存儲庫將在短時間後使用,通常不到1分鐘。如果您在嘗試使用新創建的遠程存儲庫時會收到錯誤,則自創建後1分鐘之後重試,它應該起作用。
克隆服務器的新存儲庫的本地副本:
git clone git1: ~ /git/repo1.git
cd repo1對您的新存儲庫進行一些更改,然後將其推到GIT服務器上的Origin遙控器:
date | tee -a test1.txt
git add .
git commit -m " A test commit. "
git push (可選)如果您想在存儲庫中工作時使用任何gitcid命令,請將gitcid添加到您的Git Repo的本地副本中。在存儲庫中運行以下命令以安裝gitcid功能:
source <( curl -sL https://tinyurl.com/gitcid ) -e (可選) gitcid從上一步添加到您的存儲庫中,您可以更輕鬆地提交並推動:
.gc/commit-push.sh Commit message.如果您想為git server的開發做出貢獻,則可以在此期間運行此命令,以幫助您為此目的設置開發環境:
source <( curl -sL https://tinyurl.com/gitcid ) -d它將克隆所有相關的項目GIT存儲庫,並為方便起見將gitcid安裝到其中。