这是一篇关于git的学习总结

设置用户名:git config --global user.name 'user_name'

设置邮箱:git config --global user.eamil  'user_email'

生成ssh密钥:要在设置用户名和邮箱之后实施

  1.生成

           cd ~/.ssh  删除该文件夹下边的内容

           ssh-keygen -t rsa -C “user_email”  按3个回车,生成密钥

           ~/.ssh文件夹下生成 两个文件:id_rsa和id_rsa.pub      

  2.添加id_rsa密钥到ssh

             ssh-agent bash

             ssh-add id_rsa

 3.在github上登录账号-->个人信息-->ssh密钥管理-->添加密钥-->将id_rsa.pub公钥粘贴进去

从远程第一次拉取代码到本地(ssh协议):在生成ssh密钥后实施

   1.git clone +ssh(ssh是github上项目的ssh地址)

     

   2.git branch -a 查看远程分支

   3.git branch –set-upstream 本地新建分支名 origin/远程分支名+git checkout  本地新建分支名,或者git checkout -b 本地新建          分支名 origin/远程分支名    拉取远程分支并且切换分支

从本地第一次推代码到远程

   1.git init      cd 到想要推送的文件夹将此文件夹交给git仓库管理  在windows中版本库中的.txt文件编码一定要是utf-8 不能直接                          用Windows的记事本直接创建否则会乱码
   2.git add  跟踪所有文件 注意小点点
   3.git commit -m "提交描述"
   4.git remote add origin ssh(http) 关联远程仓库 ssh或者http协议
   5.git pull --rebase origin master   获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
   6.git push -u origin master           推送代码

合并其他分支提交到当前分支

  A分支合并单个提交到C分支   git cherry-pick +A分支commit编码(使用git log可查看编码) 基于C分支操作

  合并连续多个提交  git cherry-pick  commit1..commit9  不包含commit1  

                                 git cherry-pick  commit1^..commit9  包含commit1 

                                 git checkout -b 分支B  commit9  + git rebase --onto 分支C commit1^  基于A分支创建一个新分支B rebase到C分支  实现了将A分支的commit1~commit9 合并到C分支上

 cherry-pick冲突解决  1.git status 查看状态

                                   2.手动处理冲突 git add. 

                                   3.git cherry-pick --continue 

                                   4.如果不想解决冲突回到cherry-pick之前的状态 直接 git cherry-pick --abort

合并分支上最后n次提交

    1.git rebase -i HEAD~n

    2.按i进入文本编辑模式 保留第一个提交的pick 下边的都改为s   Esc-->:wq 保存并退

    3.按i再次进入文本编辑模式 删除冗余的注释 保留自己想要的 Esc-->:wq 保存并退

    4.如过出现冲突 git status -s 查看冲突的文件并手动解决冲突之后 git  add  git rebase --continue 继续 如果不想继续 则发现           冲突后直接 git rebase --abort

    5.git push -f 推送代码

对比俩个分支的差异

    

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值