1. 程式人生 > >python django -7 Git與項目

python django -7 Git與項目

inf 不同 lin 暫時 https sudo git倉庫 推送 esc

  • git的使用,主要包括:
    • 本地倉庫的命令
    • 遠程倉庫的命令
  • 項目需求、頁面、模型類的設計,及頁面的使用

Git簡介

  • Git是目前世界上最先進的分布式版本控制系統
  • 安裝
sudo apt-get install git
  • 安裝成功後,運行如下命令
git

遠程倉庫

  • Git是分布式版本控制系統,同一個Git倉庫,可以分布到不同的機器上。首先找一臺電腦充當服務器的角色,每天24小時開機,其他每個人都從這個“服務器”倉庫克隆一份到自己的電腦上,並且各自把各自的提交推送到服務器倉庫裏,也從服務器倉庫中拉取別人的提交。可以自己搭建這臺服務器,也可以使用GitHub網站

創建github賬號

  • 本地Git倉庫和GitHub倉庫之間的傳輸是通過SSH加密的
  • step1:創建項目的SSH Key
ssh-keygen -t rsa -C "[email protected]"
  • 創建完成後,在用戶主目錄裏找到.ssh目錄,裏面有id_rsa和id_rsa.pub兩個文件,這兩個就是SSH Key的秘鑰對,id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰,可以放心地告訴任何人
  • step2:* 登錄github註冊或登錄賬號,打開“settings”的“SSH Keys”頁面,然後,點“New SSH Key”,填上任意Title,在Key文本框裏粘貼id_rsa.pub文件的內容,點“Add Key”,你就應該看到已經添加的Key

創建遠程庫

  • 登陸GitHub
  • 在右上角找到“new repository”按鈕,創建一個新的倉庫

從遠程庫克隆

  • 將github上的項目,克隆到本地一份
git clone [email protected]:賬號名/項目名.git

與遠程庫交互

  • 從遠程庫獲取到本地
git pull
  • 將本地提交遠程庫
git push origin master
  • 提示:每次提交前,需要先獲取,解決沖突後再次提交

本地倉庫

創建本地倉庫

  • 創建空目錄
mkdir test7
cd test7
  • 目錄結構圖如下:

技術分享

  • 在目錄下創建本地倉庫
git init
  • 創建成功後,目錄結構如下圖:

技術分享

  • 版本庫就是一個目錄,這個目錄裏面的所有文件都可以被Git管理起來,每個文件的修改、刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”

文件管理

  • 本地倉庫分為三部分:工作區,暫存區,倉庫區,其中暫存區、倉庫區是版本庫部分
  • 三個部分的操作及命令如下圖

技術分享

工作區與暫存區

  • 使用IDE打開目錄,創建項目,將文件添加到暫存區
git add 文件1 文件2 ...
git add 目錄
  • 使用暫時區的內容恢復工作區的內容
git checkout -- 文件名
  • 查看暫存區的狀態
git status

暫存區與倉庫區

  • 將暫存區的記錄添加到倉庫區
git commit -m ‘本次提交的說明信息‘
  • 查看倉庫區的歷史
當前版本的歷史版本:git log
簡版顯示:git log --pretty=oneline
歷史命令:git reflog
  • 在Git中,用HEAD表示當前版本,也就是最新的提交3628164...882e1e0(註意我的提交ID和你的肯定不一樣),上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100

  • 對比工作區和倉庫區中某版本某文件的不同

git diff HEAD -- 文件名
  • 回退歷史版本到暫存區
git reset HEAD^或版本號

刪除文件

  • 依次執行如下命令
rm 文件名
git rm 文件名
git commit -m ‘說明信息‘

項目設計

  • 這是一個垂直電商,只針對生鮮水果的一個電商平臺
  • 下發頁面
  • 實現功能:首頁、列表頁、展示頁、購物車、訂單、用戶登錄註冊、用戶中心
  • 分組完成開發,一組人員為4-5人

模型類設計

  • 用戶UserInfo
    • uname
    • upwd
    • ...
    • isDelete
  • 商品分類TypeInfo
    • ttitle
    • isDelete
  • 商品GoodsInfo
    • gtitle
    • gtype
    • gprice
    • gdesc
    • isDelete
  • 購物車CartInfo
    • user
    • goods
    • count
  • 訂單OrderInfo
    • user
    • ototal
    • state
  • 訂單詳細OrderDetailInfo
    • order
    • goods
    • count
    • price

使用頁面

  • 將現有頁面進行整理,劃分出template、static目錄下的內容
  • 找出模板頁面的繼承關系
  • 替換模板中的數據


python django -7 Git與項目