Git笔记

Git 命令操作笔记

安装

下载Git - git 官网. - 淘宝镜像 Git for Windows 安装步骤

配置

对你的commit操作设置关联的用户名

git config --global user.name "Your Name"
对你的commit操作设置关联的邮箱地址
git config --global user.email "email@example.com"
查看您的配置
git config --list
启用有帮助的彩色命令行输出
git config --global color.ui auto

创建仓库

创建一个新的本地仓库

git init
将本地仓库与一个 GitHub 上的空仓库连接起来
git remote add origin [url]
Clone(下载)一个已存在于 GitHub 上的仓库,包括所有的文件、分支和提交(commits)
git clone [url]

.gitignore 文件

有时一些文件最好不要用 Git 跟踪。这通常在名为 .gitignore 的特殊文件中完成。你可以在 github.com/github/gitignore 找到有用的 .gitignore 文件模板。

本博客的 .gitignore 文件
.deploy_git/ .deploy_heroku/ node_modules/ public/ db.json .DS_Store Thumbs.db *.log *.~

进行更改

浏览并检查项目文件的发展

# 时刻掌握暂存区状态。
# 参数 -s/--short 使其更加简洁:?? 未跟踪 A 新文件已暂存 M 文件修改过
# 输出有两栏,左栏是暂存区,右栏是工作区
git status
列出当前分支的版本历史
git log
列出文件的版本历史,包括重命名
git log --follow [file]
展示两个分支之间的内容差异
git diff [first-branch]...[second-branch]
将文件进行快照处理用于版本控制(暂存)
git add [file]

# 提交所有变化到暂存区(跟踪/暂存)
git add -A
# 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add -u
# 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git add .
将文件快照永久地记录在版本历史中(提交)
git commit -m "[descriptive message]"

重做提交(不推荐)

清除错误和构建用于替换的历史 撤销所有 [commit] 后的的提交,在本地保存更改

git reset [commit]
放弃所有历史,改回指定提交。
git reset --hard [commit]

分支

创建一个新分支

git branch [branch-name]
切换到指定分支并更新工作目录(working directory)
git checkout [branch-name]
将指定分支的历史合并到当前分支。这通常在拉取请求(PR)中完成,但也是一个重要的 Git 操作。
git merge [branch]
删除指定分支
git branch -d [branch-name]

同步更改

下载远端跟踪分支的所有历史(获取)

git fetch
将远端跟踪分支合并到当前本地分支
git merge
将所有本地分支提交上传到 GitHub
git push
使用来自 GitHub 的对应远端分支的所有新提交更新你当前的本地工作分支。(拉取) git pullgit fetchgit merge 的结合
git pull

参考文章