第一次使用:解决每次都要输入密码
# 生产ssh公钥 id_rsa.pub
ssh-keygen -t rsa -C "youremail@example.com"
## 全局
git config --global credential.helper store
git config --global user.username "username"
git config --global user.password "password"
常见指令:
git pull # 拉取
git push # 推
git clone xxxxx
git add .
git commit -m "xxx"
git push
git status
git log -2
git branch
git branch -vv # 每个分支的对应情况
git branch dev # 创建dev分支
git checkout master # 切到主分支
git checkout -b dev origin/master # 基于主分支创建dev分支,并切换
git reset --hard HEAD~1 # 回退到上个提交版本
–soft:只是改变HEAD指针指向,缓存区和工作区不变;
–mixed:修改HEAD指针指向,暂存区内容丢失,工作区不变;
–hard:修改HEAD指针指向,暂存区内容丢失,工作区恢复以前状态;
git rebase -i HEAD~2 # 进入文档,处理最近两个提交,比如合并
# 将当前分支的最新提交拎出来,放到dev分支最新提交的最后面
git pull dev --rebase
# 分解为以下两步
git fetch dev
git rebase dev
# 如果有冲突
# 放弃合并,回到rebase操作之前的状态
git rebase --abort
# 则会将引起冲突的commits丢弃掉(慎用!!)
git rebase --skip
# 合并冲突,结合"git add 文件"命令一起用与修复冲突,提示开发者,一步一步地有没有解决冲突。
git rebase --continue
# 也可以
# 将origin/zkk_dev_120_0228最近一次提交复制粘贴到当前分支的最近提交
git cherry-pick origin/zkk_dev_120_0228 HEAD