• git


    #########################################

    新建项目:(windows)
    
        背景知识:
            基础设置:
                git config --global core.autocrlf false  #避免Windows的换行符问题
                git config --global user.name "John Doe"
                git config --global user.email johndoe@example.com
                git config --global merge.tool vimdiff    
                git config --global mergetool.prompt false
                git config --list
                git config user.name
                git help config
            
            使用vimdiff解决冲突:
                https://blog.rex-tsou.com/2018/11/%E7%94%A8-vimdiff-%E8%A7%A3-git-%E8%A1%9D%E7%AA%81/
                https://blog.csdn.net/redguardtoo/article/details/9076961
                https://www.cnblogs.com/michael-xiang/p/10465857.html
                git config --global merge.tool vimdiff            #设置解决冲突的工具
                git config --global mergetool.prompt false        #避免每次运行git difftool都有提示信息
                git config --global mergetool.keepBackup false  #默认会生成以 *.orig 为扩展名的备份文件
                    git mergtool
                    :buffers    #获取窗口编号
                    :diffget 3  #使用指定的窗口中得到内容代替merged中的内容
                    :diffupdate #刷新一下
                    :xa         # 保存退出,git只关心merged中的内容,其余的会自动忽略
                    commit
                    
            生成 SSH Key: 
                mkdir ~/.ssh
                ssh-keygen -t rsa -C "xxx@163.com"
                clip < ~/.ssh/id_rsa.pub  # 内容复制到剪切板中
                公钥复制到GitHub上即可
                ssh -T git@github.com   #测试sshkey连接
                
                
            .gitignore
                GitHub创建仓库时可以生成,也可以本地创建
            
            和团队项目保持同步:
                git remote add upstream git@github.com:xxx/xxx.git
                git fetch upstream
                git merge upstream/dev
            
            
        根据现有项目,改成灵活配置的方式
        创建新项目
            1.远程仓库
                创建新仓库
                    .gitignore,README,不需要证书许可
                    创建dev分支
            2.本地仓库
                git clone git@github.com:xxx/xxx.git
                git checkout -b dev origin/dev
    2019.8.2

    #########################################

    .gitignore


    删除本地版本库及本地文件
    git rm -r -f .idea

    本地及远程版本回退
    git reset --hard 279bded4
    git push -f origin master

    设置upstream
    git remote add upstream https://github.com/zhongyinhei/yct_worker.git
    git fetch upstream
    git merge upstream/dev

    删除本地分支
    git branch -D xjinjin-master

    #########################################

    接受项目邀请合作开发,在分支工作
    https://www.cnblogs.com/schaepher/p/4933873.html

    github怎么邀请合作者加入到自己的项目-百度经验:
    https://jingyan.baidu.com/article/948f5924f43f47d80ff5f9f9.html

    git使用总结:
    https://segmentfault.com/a/1190000015798490

    冲突解决:

    介绍:项目有两个分支master和dev开发分支,dev开发完新功能后remote和upstream都更新完成,现在需要把新功能merge到master上做docker镜像部署到生产环境。

    如下:merge时发生conflict,需要手动解决

    git mergetool  回车后进入编辑环境注意观察分为 修改前,修改后,remote   保留一个版本即可

    git commit -m "conflict"

    git push    在GitHub上提交到upstream上即可

    完成

    #########################################

    提前准备好的东西

    https://gitee.com/或者github

    码云 注册好创建一个测试仓库

    git安装

    Windows下安装: 自行百度

    Linux安装

    Yum install git

    工作区--暂存区--本地仓库--远程仓库

    先做远程仓库,在做项目

    分布式和集中式   git&svn

    Win10下举例

    安装好后 打开git bash

    全局配置

    Git config --global user.name “徐金金”

    Git config --global user.email “xxxx@163.com

    本地代码管理

    Cd /f

    Mkdir gitproject

    Cd gitproject

    Git init   #初始化git仓库

    增:

    Vim a.py  

    Git status      查看状态

    Git add a.py    单个文件

    git add . (提交所有)  暂存区 

    git add --all

    Git commit a.py  -m “注释:新加一个文件”     单个文件 本地仓库

    git commit -m "test"

    Git commit                                 提交多个文件

    远程仓库:

    码云,git

    创建远程仓库

    本地仓库关联远程仓库  origin是远程仓库的别名

    Git remote add origin https://gitee.com/jinjinxu/test.git

    Push到远程仓库 ps:需要验证账号密码,就是登陆码云的账号密码

    Git push origin master

    git push

    #查看远程

    Git remote  

    Git remote -v

    删除远程仓库

    git remote remove 远程地址

    Git remote remove origin

    添加远程仓库

    Git remote add 别名 远程仓库地址

    Git remote add origin https://gitee.com/jinjinxu/test.git

    修改远程仓库

    Git remote rename 旧名称 新名称

    Git remote rename origin neworigin

    从远程仓库删除

    Git rm c.py  删除

    Git commit   或者 git commit c.py -m “注释”   本地仓库

    Git push origin master  远程仓库

    查看日志

    Git log  #查看整个项目的日志

    Git log file #查看单个文件的日志

    Git log .  #查看本目录日志

    Git reflog #查看简略版

    版本切换

    Git reset --hard “head^^^”  #几个^符号代表回退几个版本  不建议用

    Git reset --hard 2580d

    分支管理 一般在分支上工作

    Git branch 查看分支

    Git branch dev  创建分支

    Git checkout dev 切换分支

    Git merge dev  合并分支

    Git push orgin dev   提交到远程分支

    Git merge dev  合并到master  在主分支上才能执行此命令

    多人协同

    把小明拉入项目

    项目--管理--项目组成员管理--开发者--添加项目组成员--输入小明

    新人加入流程 到一个干净的目录里执行:

    不需要git init

    Git clone https://gitee.com/jinjinxu/test.git

    Git branch dev   到相应的分支工作即可

    冲突问题

    Git pull origin dev  更新最新    push之前先pull一下

    真冲突的话 手动解决 删除一个留一个

    公钥登录  免密登录  个人公钥 项目公钥

    Sshkey 生成 公钥和私钥  公钥放在git上即可   

    Ssh-keygen -t rsa -C xxxx@163.com  

  • 相关阅读:
    RabbitMQ架构面试题答不出来怎么办!大佬手绘架构图带你分分钟搞懂!
    【秋招必备】大数据面试题100道(2021最新版)
    【秋招必备】设计模式面试题(2021最新版)
    【秋招必备】TCP,UDP,Socket,Http网络编程面试题(2021最新版)
    3分钟带你玩转MySQL体系结构和查询原理!
    易车面试官:说说MySQL内存结构、索引、集群、底层原理!
    【秋招必备】Mybatis面试题(2021最新版)
    iOS-项目开发1
    ReactNatvie遇到的错误
    细节
  • 原文地址:https://www.cnblogs.com/xujinjin18/p/9655968.html
Copyright © 2020-2023  润新知