天天看點

将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

前言

在日常開發中我們經常會遇到這樣的需求:在本地開發項目同步到Github上,同時将伺服器上的代碼也做更新。倘若能把

本地-Github-伺服器

這三個平台關聯(如圖),這樣就能極大的提高我們的效率。

将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

那麼大體上的思路就隻分兩步了:

  1. 将本地項目托管到Github
  2. 将Github上的代碼同步到遠端伺服器端

本地項目托管到Github

先假設我們再本地的D盤目錄下建立了一個

test

檔案夾,裡面放着我們的項目代碼,接下來我們需要進行如下操作将其托管到Github。

1. 本地下載下傳安裝Git環境

這一步不多做贅述,去Git官網下載下傳Git的安裝包就可以了,安裝完成後打開

Git Bash

應用,輸入指令:

$ ssh-keygen -t rsa -C "yourEmail"
$ Generating public/private rsa key pair.
$ Enter file in which to save the key (/c/Users/esunr/.ssh/id_rsa): 
$ Created directory '/c/Users/esunr/.ssh'.
$ Enter passphrase (empty for no passphrase):
$ Enter same passphrase again:

$ git config --global user.name "yourName"
$ git config --global user.email "yourEmal"
           

yourName

yourEmal

分别對應你的Github使用者名和郵箱

2. 添加開發機的SSH Key

SSH Key

即SSH公鑰,隻有我們把某台PC的SSH公鑰添加到Github的設定中,我們的這台PC才能跟我們上傳的項目進行同步和更改。

首先我們打開Git Bash,在指令中輸入

$ cd ~/.ssh
$ ls
           

如果列出如下目錄:

id_rsa  id_rsa.pub  known_hosts
           

說明已存在SSH Key無需再生成,如果不存在則運作

$ ssh-keygen
           

生成

id_rsa.pub

檔案後,我們使用指令檢視密鑰

$ cat id_rsa.pub
           

得到的密鑰大概長這樣

将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

我們将

id_ras.pub

檔案中的所有文本都複制下來,打開Github,選擇右上角頭像-Settings-SSH and GPG keys,點選選項面闆中的

New SSH Key

将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

将自己的SSH Key添加到選項中即可,之後我們可以運作測試是否連接配接到Github

ssh -T [email protected]
           

如果出現如下提示,則說名連接配接成功

Hi EsunR! You've successfully authenticated, but GitHub does not provide shell access.
           

3. 在Github中建立空項目

我們點選右上角的“+”選擇

New repository

建立一個新項目,要注意一點的是:

新項目中除了題目和描述之外,不要點選任何選項,我們要的是一個完全空的項目倉庫
将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

4. 上傳本地項目代碼到Github

我們點選

Create repository

之後,會出現一個提示,如下做講解

// 這一步是跳轉到本地的項目目錄,我們可以替換為cd指令跳轉,cd C:/test
echo "# test" >> README.md
// 初始化項目
git init
// 添加一個README.md檔案(選擇性)
git add README.md
// 托管更改
git add . 
// 送出一次初始化更改
git commit -m "first commit"
// 将本地與Github做遠端連接配接
git remote add origin [email protected]:EsunR/test.git
// 送出代碼到主分支
git push -u origin master
           

之後再重新整理Github頁面就發現代碼送出完成了。

Github代碼同步到伺服器

PS: 将代碼下載下傳到本地同理

1. 伺服器下載下傳安裝Git環境

與上文相同,隻不過是伺服器端就不需要用Git Bash了

2. 添加開發機的SSH Key

與上文相同

4. 同步項目代碼到伺服器(本地)

首先在伺服器或本地建立一個檔案夾,作為項目的存放倉庫,利用cd指令跳轉到該檔案夾下,如:

$ cd /var/www/html
$ mkdir test
$ cd test
           

初始化該目錄為Git倉庫

$ git init
           

我們在Github中打開我們的項目,之後選擇

Clone or download

,複制我們項目的SSH位址

将本地項目托管到Github上,以及将Github上的項目同步到本地本地項目托管到GithubGithub代碼同步到伺服器

将倉庫遠端源連接配接到Github上的該項目

$ git remote add origin [email protected]:EsunR/test.git
           
PS: 如過手滑資訊填寫錯誤,使用清除指令

$ git remote remove origin

清除源

使用

Pull

指令,從遠端源的主分支更新代碼到伺服器(本地)

$ git pull origin master
           

完成。