Skip to content

Latest commit

 

History

History
137 lines (115 loc) · 4.29 KB

git.md

File metadata and controls

137 lines (115 loc) · 4.29 KB

KEEER Git Guide

安装WSL

参考这篇文章。本教程中所有操作均在Debian下进行,也可使用Ubuntu。

在WSL中安装Git

1. 安装并配置Git

注意:请将[email protected]替换为你的邮箱,将Your Name替换为你的姓名。

sudo apt update
sudo apt install git
git config --global user.email "[email protected]"
git config --global user.name "Your Name"

2. 配置SSH

注意:请将[email protected]替换为你的邮箱。

ssh-keygen -t rsa -b 4096 -C "[email protected]"
eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa

告诉GitHubKEEER Git你的SSH公钥。

3. 配置GPG

我们推荐使用4096位密钥。

注意:请将*0E76AD10B3B7C66F*替换为你的gpg --list-secret-keys --keyid-format LONG的输出中的内容(见下)。

gpg --full-generate-key
gpg --list-secret-keys --keyid-format LONG
gpg --armor --export 0E76AD10B3B7C66F
git config --global user.signingkey 0E76AD10B3B7C66F
git config --global commit.gpgsign true

gpg --list-secret-keys --keyid-format LONG 输出:

gpg: checking the trustdb
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
/home/alan-liang/.gnupg/pubring.kbx
-----------------------------------
sec   rsa4096/0E76AD10B3B7C66F 2019-05-29 [SC] // 注意0E76AD10B3B7C66F
      0388080D7996FC65483C52800E76AD10B3B7C66F
uid                 [ultimate] Alan-Liang (Alan Liang) <[email protected]>
ssb   rsa4096/EF93B4028712D401 2019-05-29 [E]

告诉GitHubKEEER Git你的GPG公钥。

测试Git

基本操作

mkdir hello-git
cd hello-git
git init
echo "Hello Git!" > README.md
git add .
git commit -m "Initial Commit"
git log

Branching

git branch feat-foo
git checkout feat-foo
echo "Feature!" > foo.txt
git add .
git commit -m "feat(foo): foo.txt"
git checkout master

Clone现有repo

git clone [email protected]:KEEER/guides.git
cd guides

Commit规范

请见Commit message 和 Change log 编写指南 - 阮一峰的网络日志

分支命名规范

请使用feat-foodev-alan-liang形式命名Branch,其中foo为功能名,alan-liang为你的名字。

常用分支

  • master: 主分支。在一个成熟的产品里,master分支表示稳定版,而没有开发完的产品里表示当前开发进度。
  • dev: 开发分支。若master表示稳定版,则dev表示当前开发进度。

Merge

在一个功能开发完毕之后需要merge到master分支里。具体操作如下。这个repo已经上传到KEEER Git。请自行创建repo并修改远程地址。

mkdir git-test
cd git-test
git init
echo "Test repo for Git" > README.md
git add README.md
git commit -m "Initial Commit"
git remote add origin [email protected]:KEEER/git-test.git
git push --set-upstream origin master
git branch feat-foo
git checkout feat-foo
echo "Feature" > foo.txt
git add foo.txt
git commit -m "feat(foo): initialize feature foo"
echo "Finished" >> foo.txt
git add foo.txt
git commit -m "feat(foo): finalize feature foo"
git push --set-upstream origin feat-foo
git checkout master
git merge --squash feat-foo
git commit -m "feat(foo): add feature foo"
git push

注意:这里使用了Squash merge。具体细节请参见这篇文章

Git常用操作

Command 用途 示例
git add 添加文件到暂存区 git add -A
git commit 添加提交 git commit -m "fix: fix #1"
git push 推送提交到服务器 git push -u origin master
git branch 添加分支(Branch) git branch feat-foo
git checkout 切换分支 git ckeckout master
git merge 合并分支 git merge feat-foo

Meta

Maintainer Contributor(s)
Alan-Liang Alan-Liang