远程仓库——GitHub

远程仓库------GitHub

注意:本文主要讲解的是,如何快速的将本地仓库的代码托管到GitHub上,如果不知道Git是什么的可以参考我的博客 ====> 分布式版本控制系统------Git

一、在GitHub创建远程仓库

  • 这样GitHub会自动为我们创建一个README.md文件。创建完毕后,可以看到README.md文件

二、在GitHub上添加密钥

  • 由于本地的Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以需要做如下的设置:
    • 第1步:创建SSH Key。先在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果已经有了,可以直接跳过第一步。如果没有,打开ShellWindows下打开Git Bash),创建SSH Key

      bash 复制代码
      ssh-keygen -t rsa -C "youremail@example.com"
      • 你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
      • 如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
    • 第2步:登陆GitHub,打开"Account settings","SSH Keys"页面:然后,点"Add SSH Key",填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:


三、克隆远程仓库的代码到本地

  • 如果我们本地没有代码或者不是最新的代码,这可以将远程库中的代码克隆到本地来。

  • 首先找到远程库的地址如下:

  • git bash命令行中输入如下命令:

    bash 复制代码
    git clone '远程库的地址'
  • 可以看到当前目录下多了一个test文件夹,进入该文件夹内可以看到克隆下来了远程库中的readme.md文件。


四、如何将本地仓库第一次同步到Github

  • 现在的情景是,本地已经创建了一个Git仓库,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,一举多得。

  • 第一步:在GitHub上创建一个远程仓库。

  • 第二步:在GitHub上添加GitGitHub通信的SSH密钥。

  • 第三步:将本地仓库的代码同步到远程仓库。

    bash 复制代码
    git remote add origin "远程库的地址"
    git push -u origin main
    • 由于远程库的内容是空的,我们第一次推送main分支时,加上-u参数,Git不但会把本地的main分支内容推送到远程新的main分支,还会把本地的main分支和远程的main分支关联起来,以后的推送或者拉取时就可以简化命令。
  • 在远程库中可以查看到我们同步的本地库中的test.txt文件。


五、总结

  • 第一次使用Git需要生成SSH密钥,使用命令ssh-keygen -t rsa -C "youremail@example.com",就可以在用户主目录下找到.ssh目录了。
  • GitHub上的代码克隆到本机上,使用命令git clone '远程库的地址'
  • 要关联一个远程库,使用命令git remote add origin '远程库的地址';关联一个远程库时必须给远程库指定一个名字,origin是默认习惯命名。
    • 关联后,使用命令git push -u origin main第一次推送main(如果你本地库的分支名叫master,就把main替换成master)分支的所有内容。
    • 此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改。
  • 如果添加远程库的时候写错了,或者想删除远程库,可以用git remove rm <name>命令。使用前建议先用git remote -v查看远程库信息:然后根据名字删除,比如删除origingit rmmote rm origin,注意:这里的删除其实是解除了本地和远程的绑定关系,并不是物理上删除了远程库。远程库本身没有任何改动。要真正删除远程库,需要登录到GitHub,在后台页面找到删除按钮再删除。

1.常用命令总结

bash 复制代码
ssh-keygen -t rsa -C <"youremail@example.com"> #生成SSH密钥
git clone '远程库的地址'> #将远程库中的文件克隆到本地Git管理
git remote add <remote_name> #关联一个远程库到本地
git remote -v #查看关联的远程库的信息
git remote rm <remote_name> #删除本地关联的远程库
git push -u <remote_name> <local_branch_name> #第一次推送本地库到远程库
git push <remote_name> <local_branch_name> #之后推送本地修改的内容

相关推荐
油泼辣子多加11 小时前
2024年12月18日Github流行趋势
github
hunteritself11 小时前
AI Weekly『12月16-22日』:OpenAI公布o3,谷歌发布首个推理模型,GitHub Copilot免费版上线!
人工智能·gpt·chatgpt·github·openai·copilot
pubuzhixing13 小时前
开源白板新方案:Plait 同时支持 Angular 和 React 啦!
前端·开源·github
玖疯子19 小时前
如何详细地遵循RustDesk的步骤来搭建远程访问和自定义服务器?
github
小华同学ai20 小时前
ShowDoc:Star12.3k,福利项目,个人小团队的在线文档“简单、易用、轻量化”还专门针对API文档、技术文档做了优化
前端·程序员·github
loop lee1 天前
Nginx - 负载均衡及其配置(Balance)
java·开发语言·github
粥里有勺糖2 天前
视野修炼第114期 | 2024JS现状调查结果
前端·javascript·github
o(╥﹏╥)2 天前
github如何给本机绑定 ssh密钥(MACOS)
运维·gitee·ssh·github
ct10270385272 天前
github快速查找已被删除的文件指令日志
运维·github
vvw&2 天前
如何在 Linux 服务器上部署 Pydio Cells 教程
linux·运维·服务器·自动化·debian·github·私有化部署