# Git 基础使用
# 用户信息配置
| |
| git config --global user.name "Asuhe" |
| git config --global user.email "sphinx@asuhe.fun" |
# 配置信息检查
通过 git config --global user.name 和 git config --global user.email 配置的用户名和邮箱地址,会被写
入到 C:/Users/ 用户名文件夹 /.gitconfig 文件中。这个文件是 Git 的全局配置文件,配置一次即可永久生效。
| |
| git config --list --global |
| |
| |
| git config user.name |
| git config user.email |
# 获取帮助
| |
| git help config |
| |
| |
| git config -h |
# 创建仓库
在想要创建仓库的目录下启动 git 然后将文件跟踪提交即可在本地创建 git 仓库
| |
| git init |
| |
| git status -s | --short |
| |
| |
| |
| |
| git add 文件名 |
| |
| git add . |
| |
| |
| git commit -m "更新描述" |
| |
| |
| git checkout -- 文件名 |
| |
| |
| git reset HEAD 文件名 |
| |
| |
| git commit -a -m "更新描述" |
| |
| |
| git rm -f 文件名 |
| |
| |
| git rm --cached 文件名 |
# 忽略文件
可以将不想提交的文件设置为忽略,这样文件就不会被 git 跟踪
创建一个名为.gitignore 的配置文件,列出要忽略的文件的匹配模式。 文件 .gitignore 的格式规范如下:
① 以# 开头的是注释
② 以 / 结尾的是目录
③ 以 / 开头防止递归
④ 以!开头表示取反
⑤ 可以使用 glob 模式进行文件和文件夹的匹配(glob 指简化了的正则表达式)
所谓的 glob 模式是指简化了的正则表达式:
① 星号 * 匹配零个或多个任意字符
② [abc] 匹配任何一个列在方括号中的字符(此案例匹配一个 a 或匹配一个 b 或匹配一个 c)
③ 问号?只匹配一个任意字符
④ 在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配
所有 0 到 9 的数字)
⑤ 两个星号 ** 表示匹配任意中间目录(比如 a/**/z 可以匹配 a/z 、 a/b/z 或 a/b/c/z 等)
| |
| *.a |
| |
| |
| !lib.a |
| |
| |
| /TODO |
| |
| |
| build/ |
| |
| |
| doc/*.txt |
| |
| |
| doc/**/*.pdf |
# 查看操作日志
| |
| git log |
| |
| |
| git log -2 |
| |
| |
| git log -2 --pretty=oneline |
| |
| |
| |
| git log -2 ---pretty=format:"%h | %an | %ar | %s" |
# 回滚至指定版本
| |
| git reset --hard <CommitID> |
| |
| |
# 将本地仓库推送至 GitHub 仓库
基于 HTTPS
| |
| git remote add origin 远程仓库的地址 |
| |
| git push -u origin master |
基于 SSH
| |
| ssh-keygen -t rsa -b 4096 -C "github账号的邮箱" |
| |
| |
| |
| |
| ssh -T git@github.com |
| |
| |
# 分支操作
| |
| git branch |
| |
| |
| git branch 分支名 |
| |
| |
| git checkout 分支名 |
| |
| |
| git checkout -b 分支名 |
| |
| |
| git merge 分支名 |
| |
| |
| git branch -d 分支名 |
| |
| |
| git push -u 远程仓库别名(默认origin) 本地分支名称:远程分支名称 |
| |
| |
| git push -u origin payment:pay |
| |
| |
| git remote show 远程仓库名 |
| |
| |
| git checkout 远程分支名称 |
| |
| |
| git checkout -b 本地分支名称 远程仓库名:远程分支名称 |
| |
| git checkout -b payment origin/pay |
| |
| |
| git pull |
| |
| |
| git push 远程仓库名称 --delete 远程分支名称 |
| |
| |
| git push origin --delete pay |