20200421学习笔记

1 篇文章 0 订阅

git

 

普通合并,不使用fast forward合并
    master为主分支,dev分支有作了修改,切换回master后
    git merge --no-ff -m "修改信息" dev

    查看历史合并信息
    git log --graph --pretty=oneline --abbrev-commit
    #普通合并能看出分支合并信息, fast forward不行

    保存现场
        如在dev分支上正在进行代码工作,此时master要改临时的bug,所以先要保存dev的工作现场(dev已添加修改到暂存区,不添加保存不了现场)
        git stash
        Saved working directory and index state WIP on dev: f52c633 add merge

        保存后就切换到master分支然后创建临时分支issue-1,在issu-1分支上修改完后再切回master分支普通合并issue分支

        然后再切换到dev分支
        git stash list 查看保存的工作现场

        恢复工作现场
            git stash pop #恢复的同时把stash内容也删除

        最后因为dev分支是从master出来的,dev分支上也同样有bug,此时需要把master修复的提效复制到dev
        git cherry-pick <commit ID>

    强行删除没有合并的分支
        git branch -D commit_ID   #开发一个新的feature(功能)最好新建一个分支.若新分支修改完成后没有被合并到分支(如dev)就要删除,要加上 -D

 

    

推送分支
    git push origin master #推送本地master分支到远程origin库
    git push origin dev   #推送本地开发分支到远程origin库

    本地创建和远程分支对应的分支,如dev分支#默认clone时只创建master对应
        创建dev对应
            git checkout -b dev origin/dev

    多人协作
        1 首先,先试图用git push origin 分支到远程仓库
        2 如果推送失败,则是因为远程仓库分比本地要新,则先git pull试图将远程库分支合并到本地
        3 如果合并有冲突,先解决冲突后在本地commit提交,最后就能push到远程分支

        如果git pull 提示no tracking information,则说明本地分支与远程会支的链路接关系没有创建。
            用命令git branch --set-upstream-to=origin/dev dev
            dev为分支
  rebase  #没搞懂

标签
        git tag <tagname> 用于新建标签 ,默认最新HEAD,也可以指定COMMIT_ID

        如git tag v0.9 d5u63eg

       

     git tag -a <tagname> -m "信息" 指定标签信息

        git tag #查看所有标签
        git show <tagname> #查看标签信息
        标签与commit_id挂钩,如果这个commit有master与dev分支,则两个分支都可以看到标签 

        推送一个本地tag到远程
            git push origin <tagname>
        推送全部未推送的标签到远程
            git push origin --tags
        本地删除一个标签 
            git tag -d <tagname>
        删除远程标签 
            先在本地删除
            git push origin :refs/tags/<tagname>
        分支与标签很像,但分支可以移动,标签不行

    .gitignore
        忽回文件原则
            1 忽略系统自动生成的文件,比如缩略图等
            2 忽略包含敏感信息文件,比如方账密或数据库文件
            3 忽略编译产生的中间文件,可执行文件

        如果你确实想添加该文件,可以用-f强制添加到Git:

        $ git add -f App.class
        或者你发现,可能是.gitignore写得有问题,需要找出来到底哪个规则写错了,可以用git check-ignore命令检查:

        $ git check-ignore -v App.class
        .gitignore:3:*.class    App.class

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值