git上传代码到Github

第一步:下载git

  • 可以到git的官网去下载

第二步:到github上创建自己的代码库

  • 登录到Github官网(github加载慢的可以到gitee网站搜索Fast Github下载安装)
  • 主页右上角加号点击new repository 新建
  • 填好项目名字后其余默认即可(不要勾选其他的设置)

第三步:新建文件夹作为本地代码库配置git

  • 为了方便使用git我们要在你要上传的文件夹内,鼠标右击然后点击git bash here(如果没有则点击显示更多选项)
  • 配置用户信息
    •  git config --global user.name "Your Name"
       git config --global user.email "[email protected]"
  • 创建git
    •  git init
  • 将文件添加到仓库
    •  //将所有文件添加
       git add .       //注意add与.之间有一个空格
       //添加特定文件
       git add 文件名(完整的加后缀名)
  • 提交更改
    •  git commit -m "提交信息"        //可有可无,但建议添加,以便后续查看
  • 关联github代码库
    •  git remote add origin https://github.com/username/repository.git    //该网址为github代码库的地址  
       若要修改地址
       git remote set-url origin https://github.com/username/repository.git     
  • 推送代码
    •  git push -u origin main 

可能存在的问题

  • 在推送代码时分支不存在
    • 首先查询分支
    •  git branch
       //若有返回则将main改为相应的分支,也可以创建一个main分支
       //创建并切换到分支
       git checkout -b 分支名
    • 然后再次推送代码
  • 在add时会遇到以下问题
    •  $ git add . 
       warning: LF will be replaced by CRLF in README.md. The file will have its original line endings in your working directory
       //是由于 Git 在处理不同操作系统的换行符时的行为。Windows 使用 CRLF(回车换行)作为换行符,而 Unix/Linux/MacOS 使用 LF(换行)作为换行符。Git 默认会在 Windows 上将 LF 转换为 CRLF。
    • 解决方法
      • git处理换行符
        • 全局配置
        •  //设置全局配置,使 Git 在检出文件时将 CRLF 转换为 LF,在提交文件时将 LF 转换为 CRLF:
           git config --global core.autocrlf true
        • 项目配置
        •  //如果你只想在当前项目中配置,可以在项目目录中运行:
           git config core.autocrlf true
      • 禁用换行符转换
        • 全局配置
        •  git config --global core.autocrlf input
        • 项目配置
        •  git config core.autocrlf input
  • 认证问题
  • 问题1
    •  remote: Support for password authentication was removed on August 13, 2021. 
       remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication. fatal: Authentication failed for
       //错误提示表明 GitHub 已经不再支持使用密码进行 HTTPS 认证。从 2021 年 8 月 13 日起,GitHub 推荐使用个人访问令牌(Personal Access Token, PAT)或其他认证方式
    •  解决方法:SSH密钥
       生成 SSH 密钥:
       打开终端,运行以下命令生成 SSH 密钥:
       ssh-keygen -t rsa -b 4096 -C "[email protected]"
       按照默认设置即可
           
       打开生成的公钥文件(通常在 ~/.ssh/id_rsa.pub),复制其内容。
       登录 GitHub,进入 Settings -> SSH and GPG keys。
       点击 New SSH key,填写 Title,粘贴公钥内容,点击 Add SSH key。
       克隆仓库时使用 SSH URL:
       将远程仓库的 URL 从 HTTPS 改为 SSH:
       git remote set-url origin [email protected]:sisick/stm32.git
  • 问题2
    •  $ git push -u origin main 
       The authenticity of host 'github.com (::1)' can't be established. ECDSA key fingerprint is SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM. Are you sure you want to continue connecting (yes/no/[fingerprint])?
       //提示是 Git 在尝试连接到 GitHub 时进行的主机密钥验证。这是为了确保你连接的是真正的 GitHub 服务器,而不是中间人攻击。
    •  1. 确认主机密钥
       在提示中,Git 显示了 GitHub 服务器的 ECDSA 密钥指纹。你需要确认这个指纹是否正确。
       ​
       确认指纹
       你可以访问 GitHub 的官方文档 来查看 GitHub 的官方密钥指纹。确保显示的指纹与官方文档中的指纹匹配。
       ​
       2. 输入 yes 继续
       如果确认指纹是正确的,输入 yes 并按回车键继续连接:
       ​
       Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
       3. 完成推送
       输入 yes 后,Git 会将主机密钥添加到你的 ~/.ssh/known_hosts 文件中,并继续进行推送操作:
       ​
       git push -u origin main

你可能感兴趣的:(git上传代码到Github)