• git命令


    git:
    源代码服务器
    每上传一次就是一次版本控制
    git特点:分布式版本控制
    在根目录下创建一个.git的隐藏文件(git init)

    工作区:一般是指pycharm:git add——>
    暂存区:进入了本地仓库 commit -->
    仓库区:push--——>远程仓库


    立项:
    首先执行clone下载到本地仓库
    commit到本地服务器
    push到远程仓库
    每次使用代码之前使用pull
    另外的人:先clone一下
    commit到本地服务器
    push到远程服务器
    pull到自己的仓库


    在本地管理自己的代码
    在本地安装git->pip install git
    在桌面创建一个项目
    创建本地仓库,在项目路径下git init
    在.git文件夹下的config中配置身份信息(
    git config user.name ‘张三’
    git config user.email ‘zhangsan@163.com’

    (当git init之后,已经被管理)(红色)
    使用git add (文件名或'.' )丢到暂存区
    git commit -m ‘立项(描述事件)’
    (git status 查看状态git log查看描述,git reflog)


    创建远程仓库:加号
    起名字
    描述可以写,可以不写
    添加忽略文件,ignoe
    添加权限,MIT比较低
    创建完成
    使用ssh,下面有个地址,使用clone拷贝这个地址
    克隆之前配置ssh
    生成对称密钥
    (客户端生成,发送密钥也不太安全,对密钥加密进行传输)
    (在github中setting中,ssh一把公钥存在)
    配置公钥:
    编辑 vi .gitconfig
    内部有个user,我的email name是github的名字
    在终端中使用ssh-keygen -t rsa -C ‘邮箱’(对称密钥)
    直接enter 在写y,在enter
    下面的是公钥路径
    取出公钥的值cat id_rsa.pub
    复制到github中,点击add sshkey,确认密码
    公钥已经放上去
    在终端中,git clone 该地址,会遇到问题
    使用eval "$(ssh-agent -s)"
    ssh-add
    其实是配置私钥
    克隆之后,配置身份信息
    在跟.git 在同一目录下创建项目
    之后是add commit push
    再次使用首先pull


    回退版本:
    1、使用head表示当前版本
    加一个^表示前一个版本
    2、git reset --hard 版本号
    回到那个版本就行

    撤销修改:
    工作区:git checkout 文件名
    暂存区:git reset head 文件名-->git checkout 文件名
    不能撤销仓库区代码:想修改,就是用版本控制

    删除文件:
    rm 文件名
    git rm 文件名
    误删了使用 git checkout 来撤回


    git的标签
    使用大标签来记录大版本,使用commit来记录小版本
    git tag -a v1.0 -m ‘version 1.0’
    一般是经理来打标签,用来记录大版本
    推送到远程服务器:git push origin v1.0


    git 分支:
    git branch查看当前的编辑分支
    一般用来解决线上bug
    研究新功能,公关难题
    一般在立项的时候建立分支
    新建并切换到新的分支,git checkout -b dev
    合并分支中的代码到主干中
    使用命令:git merge dev
    默认执行了add commit操作


    分支中使用bug
    分支中保存现场:git stash
    恢复现场:git stash
    git stash pop
    git checkout dev切换到dev分支
    新建分支,并下载v2.0版本的代码
    git checkout -b bugfix v2.0
    解决bug 本地记录,提交,推送
    打一个标签,2.1
    之后合并到dev中
    回到原来的分支,回到现场

  • 相关阅读:
    React Native 实现MQTT 推送调研 (1)
    bpmn的依赖注入
    vdom diff
    浏览器渲染与event loop
    uni-app 通过后缀名区分不同渠道版本
    网页定宽 栅格布局
    网页顶部菜单导航和左侧菜单导航的区别?
    Android利用tcpdump和wireshark抓取网络数据包
    就算做了
    我眼中的Serverless
  • 原文地址:https://www.cnblogs.com/weiwei-python/p/9781260.html
Copyright © 2020-2023  润新知