用户名和邮箱
git config --global user.name "xxx"
git config --global user.email "xxx@a.b.cn"
每次commit都会产生一条log,这条log标记了提交人的姓名与邮箱。
所以在提交代码之前要设置自己的用户名与邮箱。
以上进行了全局配置,有时候我们的某个项目想要用特定的邮箱,这时候只需切换到项目目录,把以上代码中--global参数去除,再重新执行一遍。
在本机git bash中执行如下命令,可生成秘钥:
ssh-keygen -t rsa -C "xxx@a.b.cn"
-------------------------------------------------------------------------------------------------------
本地命令
git 查看命令
git status 查看状态
git init 初始化仓库(在目录内部)
删除.git目录,则可以删除仓库
git add <file> 把文件增加到暂存区
git add . 全部
git rm --cached <file> 删除暂存区的文件
git commit -m '提交说明' 把暂存区的文件提交到仓库
git log 查看所有的commit记录
git branch 查看当前分支
git branch 分支名称 创建分支,在哪个分支里面创建分支,则创建的分支和那个分支的内容完全一样
git branch -d 分支 删除分支,如果正处于要删除的分支里,先切换到其他分支
git branch -D 分支 强制删除分支,如果要删除的分支还没合并到master分支,用“-d”删除
可能会失败,这时候则用“-D”强制删除
git checkout 分支名称 切换分支
git checkout -b 分支名称 创建分支并且切换到该分支
git checkout commit_id 切换到某次commit
git checkout <file> 撤销还没有add到暂存区的操作
git merge 分支 合并分支
第一步,想合并到哪个分支里,就要先切换到哪个分支;
第二步,执行“git merge 分支名称”
git tag 查看版本标签
git tag 版本标签 新建版本标签(如V1.0)
git tag -d 版本标签 删除版本标签
git checkout 版本标签 切换版本标签
git diff 查看差异(当前目录里文件与暂存区文件的差异)
git diff <$id1> <$id2> 比较两次提交之间的差异
git diff <branch1>..<branch2> 比较两个分支之间的差异
-------------------------------------------------------------------------------------------------------
远程命令
git remote -v 查看当前项目有哪些远程仓库
git remote add 远程仓库名称 远程仓库地址
把本地的当前仓库与远程的仓库关联
如:git remote add origin git@github.com:stormzhang/test.git
origin是给本地仓库里项目的远程仓库起的名字
git@github.com:stormzhang/test.git是远程仓库的地址
git push 远程仓库名称 远程仓库分支
把本地代码推到远程仓库的分支里,push之前肯定执行过pull
如:git push origin master 把本地代码推到远程master分支
git pull 远程仓库名称 远程仓库分支
把远程仓库里分支的代码拉到本地
如:git pull origin master 把远程master分支的代码拉到本地
git remote rm origin 删除远程仓库名
-------------------------------------------------------------------------------------------------------
远程与本地仓库对接步骤:
1.远程仓库新建分支,名称为非中文,如:1.01
2.本地仓库创建名为1.01的分支,执行:git branch 1.01
3.本地仓库切换到1.01分支,执行:git checkout 1.01
4.本地仓库更新代码后,把更新内容增加到暂存区,执行:git add .
5.本地仓库提交更新内容,执行:git commit,回车之后进入vim编辑环境,写一点提交概述
6.本地仓库push更新内容到远程仓库,执行:git push origin 1.01