1.准备工作
1.配置用户名和邮箱
git config --global user.name “xxx”
git config --global user.email “xxx”
2.配置ssh key
github服务器 使用ssh key连接,上传代码的时候就不用每次输入账号密码了,如果用http链接,则需要。检查ssh key,否则需要查看用户目录是否有.ssh目录,.ssh目录下有id_rsa和id_rsa.pub,如果没有则需要初始化key:ssh-keygen -t rsa -C “youremail@example.com”,接着把公钥id_rsa.pub上传到github,这时候就可以上传代码到自己的远程仓库了。
2.远程分支
1.初始化本地分支
git init
2.在github上创建远程仓
2.1 创建完成之后,此时还是空仓库,可以添加远程/克隆远程仓库来修改
git remote add origin xxx
git clone xxx
2.2 查看远程仓库信息
git remote -v
2.3 删除远程仓库
git remote rm origin
2.4 上传代码
git push origin <本地分支>:<远程分支>
git push origin master,origin表示远程仓库,git clone拷贝默认远程仓库为origin,当然如果添加远程仓库方式为git remote add origin1 xxx,则git push origin1 master,master表示本地的master分支,这里省略了远程分支名(保留了远程分支追踪关系,其实本地分支也可以不用),如果远程分支不存在则会创建分支。
git push -u origin master 上传到远程master分支并关联,若远程分支不存在则会创建远程分支。
git branch -vv:查看本地分支upstream,upstream用来pull和push追踪的远程分支。
git branch --set-upstream-to=origin/ dev,将本地分支与远程分支关联起来。
git push origin 本地分支:远程需要创建分支
git checkout -b mybranch origin/mybranch取远程分支并创建一个本地分支
git pull -p 拉取远程分支的时候会删除已经没有的本地远程分支
git push origin --delete <远程分支>:删除远程分支,需要本地分支切换到不与远程分支关联
3.本地分支
git brach 查看分支
git branch 创建分支
git checkout 切换分支
git checkout -b 创建并切换分支
git banch -d 删除分支
git branch 查看本地分支
git branch -r 查看本地远程分支
git branch -a查看本地远程分支和本地分支
4.版本管理
git checkout – 取消工作区修改
git reset <commit_id> 取消commit_id之后的修改到暂存区
git reset --soft <commit_id>commit_id之后的修改到暂存区
git reflog 可以看到commit_id包括被删除的
git commit -amend 重新修改commit信息,并将暂存区的修改合并起来
5.合并
git fetch 拉去远程分支到本地远程分支
git merge 将分支name的修改合并到当前分支,会产生新的节点(commit_id),保留原来分支的开发记录。
git rebase 将分支修改放到当前分支的最后面,所以叫变基,不会产生新的节点。
git pull = git fetch + git merge fetch_head
git pull --rebase = git fetch + git rebase fetch_head