环境:Ubuntu 16.04
初始配置命令
1. git config --global username "***" 配置本地用户
git config --global usermail "**@***" 配置邮箱
2. git init 将目录初始化为Git仓库
3. git clone [url] 复制一个Git仓库
基本快照
Git的工作就是创建和保存你的项目快照及与之后的快照进行对比
1. git add 添加文件到缓存
2. git status 查看项目当前状态
-s 获得简短的输出结果,其中第一栏为缓存,第二栏为工作目录
3. git diff 尚未缓存的改动
--cached 查看已缓存的改动
HEAD 查看已缓存与未缓存的所有
-stat 显示摘要而非整个diff
4. git commit 记录缓存内容的快照
-m '***' 提供提交的注释(若无-m则以VIM打开注释信息)
-a 自动在提交前将已记录修改的文件放入缓存去
5. git reset HEAD 取消缓存已缓存内容
6. git rm 将文件从缓存区移除(默认从缓存及目录中删除)
--cache:工作目录中保留
分支与合并
1. git branch 列出可用的分支
2. git branch *** 创建***分支
3. git checkout 切换分支
-b 创建新分支,并立即使用
-d 删除分支
4. git merge 将分支合并到当前分支
e.g git merge testing 将testing分支合并
5. git log 显示一个分支中提交的修改记录
--oneline 查看简洁版
--graph 开启拓扑图
e.g git log --oneline erlang ^master 显示erlang分支但不在主分支的提交
6. git tag 给历史记录中某点打上标签
-a 穿件一个带注解标签
--decorate 查看标签
e.g git tag -a V1.0 给最想一次提交打上V1.0的标签
分享与更新
1. git remote 列出远端别名
-v 每个别名的实际链接
add 添加一个远程仓库 e.g git remote add [alias] [url]
rm 删除某别名
2. git fetch 从远端下载新分支及数据
3. git pull 从远端提取数据并合并到当前分支.即fetch后紧接着merge
4. git push 推送新分支与数据至某个远程库 e.g git push [alias] [branch]
TPS:最近在一个新建仓库中发现,初次push远程仓库时失败,提示需要先pull合并一次,合并时有提示refusing to merge unrelated histories,这是由于双方commit数据不一致引起的,在2.9.2之后的版本中需要增加一个命令git pull origin master –allow-unrelated-histories进行合并