git 中的三种目录
仓库目录
永久保存各个版本文件的快照
暂存目录
临时保存修改后还没提交的文件的快照
工作目录
从仓库目录中具象化的一个快照,提供编辑和修改
创建仓库
git init
添加跟踪文件
git add 将文件的快照放在暂存仓库里同时将未添加跟踪的文件添加跟踪
删除跟踪的文件
git reset HEAD <filename>
提交添加的文件
git commit -m
查看git版本库状态
git status
查看修改
git diff 查看工作目录与暂存的快照之间的差异
git diff -cached 查看工作目录与上次提交的快照之间的差异
提交修改
commit -m
删除文件
git rm filename 删除文件
git rm -f filename 删除已经add的文件
git rm --cached filename 删除版本仓库中的文件
移动文件
git mv src dst 相当于 mv src dest;git rm src;git add dst
查看提交历史
git log -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新
修改上一次的提交
git add 以后 git commit --amend
取消暂存的文件
git reset HEAD filename
取消文件的修改
git checkout filename
获取当前的远程仓库的信息
git remote
添加一个远程仓库
git remote add 仓库名 url
从远程仓库抓取数据
git fetch 仓库名 这个命令只抓取修改不能自动合并分支
从远程仓库抓数据
git pull 抓数据并自动合并分支
从本地提交数据到远程仓库
git push 远程仓库名 分支名
获得remote 的一些信息
git remote show 远程仓库名 同时会获得git push git pull 可以自动合并的分支
创建新的分支
git branch 分支名 -d 删除分支
切换到不同分支
git checkout 分支名
合并分支
git merge 分支名
查看已经与当前分支合并的分支
git branch --merged
查看与当前分支尚未合并的分支
git branch --no-merged
忽略某些文件的方法
创建 .gitignore 文件
.gitignore 文件的规则
所有空行或者以注释符号开头的行都会被 Git 忽略。
可以使用标准的 glob 模式匹配。
匹配模式最后跟反斜杠说明要忽略的是目录。
要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号!取反。