• 如何上传项目到github?


    前提

    • git bash工具
    • github账号

    准备项目

    1、在github上创建一个项目,然后git clone到本地。
    2、将本地的项目放到和这个文件夹中

    上传项目

    git add

    git add README.md //文件添加到仓库
    git add . //不但可以跟单一文件,还可以跟通配符,更可以跟目录。一个点就把当前目录下所有未追踪的文件全部add了

    绑定用户

    $ git config user.name "myysophia"
    $ git config user.email "2324234234234@126.com"
    
    

    git config –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。

    将local的公钥加入github的秘钥管理中

    公钥就是那个用来加密的数字,这也就是为什么你在本机生成了公钥之后,要上传到github的原因。从github发回来的,用那公钥加密过的数据,可以用你本地的私钥来还原。
    在这里插入图片描述

    在生成github tocken

    有了这个token就不用你每次push输入密码了。
    在这里插入图片描述
    参考:https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token

    建立本地仓库

    $ git commit -m "init"
    [main 761dc09] init
     10 files changed, 278 insertions(+)
     create mode 100644 master1/Vagrantfile
     create mode 100644 master1/install.sh
     create mode 100644 master1/reload-k8s-cls.sh
     create mode 100644 master1/startk8s.sh
     create mode 100644 node/Vagrantfile
     create mode 100644 node/install.sh
     create mode 100644 node/reload-k8s-cls.sh
     create mode 100644 shutdown.sh
     create mode 100644 startk8s.sh
     
    git remote add origin1 git@github.com:myysophia/vagrant-init-k8s-cls.git //关联远程仓库
    
    git push -u origin1 master //把本地库的所有内容推送到远程库上
    error: src refspec master does not match any
    error: failed to push some refs to 'github.com:myysophia/vagrant-init-k8s-cls.git'
    
    git remote -v
    origin  https://github.com/myysophia/vagrant-init-k8s-cls.git (fetch)
    origin  https://github.com/myysophia/vagrant-init-k8s-cls.git (push)
    origin1 git@github.com:myysophia/vagrant-init-k8s-cls.git (fetch)
    origin1 git@github.com:myysophia/vagrant-init-k8s-cls.git (push)
    
    https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
    

    解决报错

    stackoverflow最高赞使用这个方法解决了这个问题。第二高赞使用的是git push -f origin master。好像首次push都会有这个问题

    $ git pull --rebase origin main
    From https://github.com/myysophia/vagrant-init-k8s-cls
     * branch            main       -> FETCH_HEAD
    Current branch main is up to date.
    
    
    $ git push origin main
    Enumerating objects: 16, done.
    Counting objects: 100% (16/16), done.
    Delta compression using up to 4 threads
    Compressing objects: 100% (14/14), done.
    Writing objects: 100% (14/14), 3.70 KiB | 946.00 KiB/s, done.
    Total 14 (delta 5), reused 0 (delta 0), pack-reused 0
    remote: Resolving deltas: 100% (5/5), done.
    To https://github.com/myysophia/vagrant-init-k8s-cls.git
       cf957eb..761dc09  main -> main
    

    https://stackoverflow.com/questions/24114676/git-error-failed-to-push-some-refs-to-remote

    git rebase

    https://morningspace.github.io/tech/git-merge-stories-6/

    查看项目

    yeah 上传成功了,快来赞一个吧
    https://github.com/myysophia/vagrant-init-k8s-cls

    在这里插入图片描述

    参考

    https://zhuanlan.zhihu.com/p/193140870

    上传代码到gitlab

    git init
    git remote add origin http://10.50.10.71/wangxu0318/chot-rabbitmq-k8s-chart.git 
    git add .
    git commit -m "chartdemo"     
    git push -u origin master
    

    遇到的问题

    [1] git push

    执行 git push -u -f origin master 提示需要输入密码,不管是输入gitlab的登录密码还是服务器密码都不行。 看来gitlab 不支持这种验证方式。

    gitlab 公钥添加

    在这里插入图片描述

    gitlab gcp key

    这个现在还不会等玩会了再来。
    在这里插入图片描述

    [2] git push 提示项目分支被保护

    修改项目保护机制。
    在这里插入图片描述

    [3] 首次git push报错

    报错如下:

    /home/scripts/etl]$git push
    git: /usr/local/greenplum-loaders-4.3.16.1/lib/libz.so.1: no version information available (required by git)
    The authenticity of host '10.50.10.71 (10.50.10.71)' can't be established.
    RSA key fingerprint is c8:d9:8c:ae:6b:fd:f7:6c:ae:06:17:b5:16:f1:08:a8.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '10.50.10.71' (RSA) to the list of known hosts.
    To git@10.50.10.71:wangxu0318/etl-tools.git
     ! [rejected]        master -> master (non-fast-forward)
    error: failed to push some refs to 'git@10.50.10.71:wangxu0318/etl-tools.git'
    To prevent you from losing history, non-fast-forward updates were rejected
    Merge the remote changes before pushing again.  See the 'Note about
    fast-forwards' section of 'git push --help' for details.
    
    

    解决:
    git pull --rebase origin master

    git pull = git fetch + git merge FETCH_HEAD 
    
    git pull --rebase =  git fetch + git rebase FETCH_HEAD
    

    什么是git rebase
    https://blog.csdn.net/weixin_42310154/article/details/119004977

  • 相关阅读:
    【微信小程序】image组件的4种缩放模式与9种裁剪模式
    淘宝/天猫获取购买到的商品订单物流 API 返回值说明
    100天精通Python(数据分析篇)——第53天:初始pandas模块
    C++Day5
    qt功能自己创作
    缓存更新策略
    Windows下实用工具汇总(更新……)
    坐标系上的交互+分治与交互:CF788D
    基于J2EE的网上体育用品销售系统设计与实现(SSH)
    Synopsys ICC学习(1)
  • 原文地址:https://blog.csdn.net/MyySophia/article/details/127090209