一、Git基本使用
# git init
# git add main.py
# git commit -m 'v0.1'
# git log
# git reset --hard HEAD^ # 回到上一个版本
# git reset --hard HEAD~11 #回到前11个版本
# git reflog # 查询操作记录
# git reset --hard cbefce9 # 回到指定版本
# git status # 查看当前状态
# git checkout -- main.py # 丢弃工作区的改动
# git reset HEAD # 撤销暂存区的修改
# git diff HEAD -- code.py # 对比和上个版本的不同、
diff --git a/code.py b/code.py
index 08fe272..78bbf29 100644
--- a/code.py # 版本区的文件
+++ b/code.py # 工作区的文件
@@ -1 +1,2 @@
first line
+new line
# git diff DEAD HEAD^ -- code.py
二、分支管理
# git branch # 查看分支
# git checkout -b dev # 创建并切换分支
# git checkout master # 切换分支
# git merge dev #合并分支
# git merge --no-ff -m 'v0.10' dev #合并分支,禁用快速合并
# git branch -d dev # 删除分支
# git log --graph --pretty=oneline # 查看分支图
# git stash save "message" # 保存现场
# git stash list # 列出保存的现场
# git stash pop # 恢复现场
三、GitHub
- 配置
# git config --global user.name "dongfei-git"
# git config --global user.email "{EMAIL}"
# cat ~/.gitconfig
[user]
name = dongfei-git
email = "{EMAIL}"
- 将.ssh/id_rsa.pub上传至GitHub
# ssh-keygen -t rsa -b 4096 -C "{EMAIL}"
# 将.ssh/id_rsa.pub的内容copy到GitHub的setting中的ssh-key
# ssh -T git@github.com
- clone项目
# git clone https://github.com/dongfei-git/tetst01.git
# git remote set-url origin git@github.com:dongfei-git/tetst01.git # 设置push免输入,注意USE-SSH
- 开发代码
# git checkout -b dev
# vim helloworld.py
print("hello world")
# git add helloworld.py
# git commit -m 'v0.1'
- 推送至GitHub
# git push origin dev
- 分支跟踪
# git branch --set-upstream-to=origin/dev dev # 跟踪分支
# git status # 可以查询跟踪远程的分支和本地的分支的差异
- 拉取代码
# git pull origin dev