在現代化的項目開發中,Git 基本上是標配。
[TOC]
## Git 的基本設置
在[前面的章節](environment/install-git.md)中已經為主機安裝好了 Git,虛擬機 Homestead 中 Git 也是作為默認安裝的軟件。
接下來大部分的 Git 操作都會發生在 Homestead 虛擬機中,首先需要對其進行設置。
### 個人信息配置
首先對 Git 進行用戶名和郵箱進行設置,此設置的作用是,在代碼提交時自動署名標記,方便查看提交日志時區分作者。
參照下面格式,替換為自己常用的用戶名和郵箱:
~~~bash
$ git config --global user.name "Your Name"
$ git config --global user.email your_email@example.com
~~~
> `--global` 選項代表對 Git 進行全局設置。
### 推送分支時相關配置
此設置是 Git 命令 push 的默認模式為 `simple`,當我們執行 `git push` 沒有指定分支時,自動使用當前分支,而不是報錯。
~~~bash
$ git config --global push.default simple
~~~
## 將項目納入到 Git 代碼版本管理
### 對 Git 進行初始化
~~~bash
$ cd ~/Code/Laravel
$ git init
~~~
### 將項目所有文件納入到 Git 中
~~~bash
$ git add -A
~~~
>[info] `.gitignore` 文件中設置的除外
### 檢查 Git 狀態
~~~bash
$ git status
~~~
>[warning] 輸出存放在 Git 暫存區的文件,這些文件還未真正提交到 Git 中。
### 保留改動并提交
將暫存區的文件都提交到 Git
~~~bash
$ git commit -m "Initial commit"
~~~
>[info] `-m` 選項后面的參數,表示本次提交的簡單描述。
### 查看歷史提交記錄
~~~bash
$ git log
~~~
>[info] 按 `q` 可退出查看
## 線上倉庫配置
### 為 Gitee 賬號設置 `SSH Key`
1. 將 `SSH Key` 添加到 `ssh-agent` 中:
~~~bash
$ eval `ssh-agent -s`
$ ssh-add ~/.ssh/id_rsa
~~~
2. 回到 **主機中** 打印出公鑰 `id_rsa.pub` 文件里的內容:
~~~bash
> cat ~/.ssh/id_rsa.pub
~~~
3. 把輸出的內容復制到剪貼板里,黏貼到線上 SSH 令牌[管理頁面](https://gitee.com/profile/sshkeys)
### 線上創建項目倉庫 `laravel`
### 虛擬機中執行以下命令,將代碼上傳到 Gitee 上完成托管
~~~bash
$ git remote add origin git@gitee.com:your_name/laravel.git
$ git push -u origin master
~~~
### 日常代碼更新推送
#### 保存到暫存區
~~~bash
$ git add -A
~~~
#### 提交到本地 Git
~~~bash
$ git commit -m "Say something"
~~~
>[info] `-m` 選項后面的參數,表示本次提交的簡單描述。
#### 撤銷文件更改
如需將在暫存區的更改文件進行強制撤銷,可執行
~~~bash
$ git checkout -f
~~~
#### 將代碼推送到線上
~~~bash
$ git push
~~~
- 日常命令
- 第一章 開發環境部署
- 第一節 安裝 VirtualBox
- 第二節 安裝 Vagrant
- 第三節 安裝 Git for Windows
- 命令行提示符的寫作約定
- Git Bash 使用技巧
- 第四節 安裝和配置 Homestead
- 第五節 啟動 Homestead 虛擬機
- 第六節 創建 Laravel 應用
- 第七節 使用 Git 進行版本控制
- 總結 本章命令概覽
- 第二章 前端工作流
- 第一節 Yarn 安裝前端擴展包
- 第二節 Laravel Mix 前端資源編譯
- (1)配置 webpack.mix.js 指定 Mix 任務
- (2)修改 resources/assets 前端資源文件
- (3)運行 Mix 任務編譯和監控代碼
- 總結 本章命令概覽
- 第三章 數據庫
- 第一節 Config 數據庫配置信息
- 第二節 Migrations 數據庫遷移文件
- 第三節 Schema 數據庫結構生成器
- (1) 數據表操作
- (2) 字段操作
- (3) 索引操作
- 第四節 Seeding 數據填充
- 第五節 DB 數據庫查詢構建器
- (1)獲取結果集