从零开始配置Ubuntu上Git:新建仓库,生成SSH密钥,推送到仓库
创作时间:
作者:
@小白创作中心
从零开始配置Ubuntu上Git:新建仓库,生成SSH密钥,推送到仓库
引用
CSDN
1.
https://m.blog.csdn.net/xiong_xin/article/details/145338985
本文将详细介绍如何在Ubuntu系统上配置Git,并将本地代码推送到GitHub仓库。内容包括Git的安装与配置、SSH密钥的生成与管理,以及远程仓库的创建和代码推送等步骤。
1. 在本地Ubuntu环境需要做
1. 安装Git
在Ubuntu中安装Git,可以使用apt包管理器。
sudo apt update
sudo apt install git
安装完成后,检查Git版本以确保安装成功:
git --version
2. 全局配置Git
Git需要一些全局配置,尤其是用户信息和首选项。
配置用户名和邮箱
Git会使用这些信息作为提交历史记录的一部分。
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
查看配置
要查看当前的Git全局配置:
git config --list
3. 生成SSH密钥
为了和Git远程仓库交互,通常需要配置SSH密钥。
指定SSH密钥名称的步骤
- 打开终端。
- 使用ssh-keygen命令生成密钥时,使用-f选项指定密钥的存储路径和名称。例如:
ssh-keygen -t rsa -b 4096 -C "你的邮箱" -f ~/.ssh/自定义名称
参数说明:
- -t rsa:指定使用RSA算法。
- -b 4096:设置密钥长度为4096位。
- -C "你的邮箱":添加密钥的注释(通常是邮箱)。
- -f ~/.ssh/自定义名称:指定密钥的保存路径和名称。
示例
假设你想把密钥命名为my_github_key,可以运行以下命令:
ssh-keygen -t rsa -b 4096 -C "example@example.com" -f ~/.ssh/my_github_key
结果:
- 私钥存储为:~/.ssh/my_github_key
- 公钥存储为:~/.ssh/my_github_key.pub
添加密钥到SSH代理
如果生成了新的密钥,可以将其添加到SSH代理中:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
SSH密钥的管理
可以通过~/.ssh/config文件进行配置。
- 打开或创建配置文件:
touch ~/.ssh/config
- 添加以下内容来指定密钥文件:
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/my_github_key
显示公钥内容:
cat ~/.ssh/id_rsa.pub
2. 在GitHub网站上需要做
1. 创建远程仓库
在GitHub上创建仓库:
- 登录到你的Git平台。
- 点击“New Repository”或“创建仓库”。
- 输入仓库名称,选择private这样就看不到了
- 不初始化仓库,不添加README文件,空着就行
- 点击“Create Repository”或“创建仓库”。
- 在GitHub上创建完空仓库,就会显示一系列推荐操作,这些操作可以将本地文件推送到GitHub仓库
2. 添加公钥到远程仓库
在GitHub上添加:
- 打开GitHub,进入Settings(设置)。
- 点击左侧的SSH and GPG keys。
- 点击New SSH key。
- 将公钥内容粘贴到文本框中:
cat ~/.ssh/自定义名称.pub
- 点击Add SSH key。
3. 回到本地Ubuntu环境需要做
测试配置
测试SSH连接
如果你使用SSH方式连接到远程仓库,可以通过以下命令测试连接:
ssh -T git@github.com
输出类似以下内容表示成功:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
2. 初始化本地仓库
进入目标文件夹(包含你想要推送的文件):
cd /path/to/your/folder
初始化Git仓库:
git init
查看状态
git status
3. 添加文件到Git
将文件夹中的所有内容添加到Git的暂存区:
git add .
- 选择性添加文件 git add 文件名1 文件名2 …
4. 提交更改
提交到本地仓库,并附加提交信息:
git commit -m "初始化提交"
- 会显示create mode …
5. 准备推送到远程仓库
准备将本地仓库内容推送到远程仓库的分支(通常是main或master):
git branch -M main # 确保分支名为main
- git branch 查看分支名字
6. 添加远程仓库
将你的本地仓库连接到一个远程Git仓库
git remote add origin <远程仓库地址>
例如,对于GitHub仓库:
- HTTPS方式:
git remote add origin https://github.com/username/repository.git
- (我们是这种)SSH方式:
git remote add origin git@github.com:username/repository.git
- git remote -v 查看远程仓库配置
7. 推送到远程仓库
git push -u origin main
-u 选项将本地分支与远程分支关联,以后可以直接使用 git push
类似一下输出
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 8 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 1.23 KiB | 1.23 MiB/s, done.
Total 6 (delta 2), reused 0 (delta 0)
- 回到GitHub网站刷新一下仓库界面文件已经上传成功
热门推荐
英语:了解短语 "stop by"
住校还是走读?家长需提前了解的那些事
鸡肉焯水用热水还是冷水?一文详解两种焯水方式的利弊与技巧
“爱新觉罗”解读:22个家庭近300年繁衍近14万人
脊椎不好别怕!每天坚持做这个动作,保护脊柱,缓解酸痛!
公积金贷款利率对比:不同银行和地区利率差异分析
双肺间质性炎症改变
2520不锈钢板的成分、特性及独特应用全解析
从一季火到四季旺:内蒙古集宁借“冷资源”激活全年经济链
如何对儿童使用积极强化(按年龄划分的指南)
家庭唯一住房如何认定?
怎么离婚最快?离婚程序怎么走?
哪些情况下员工请假可能不被批准
蓝箭航天牵手清华共建重点实验室,发力可重复使用火箭技术创新
蓝箭航天:逐梦星辰的中国商业航天力量
听神经瘤开颅手术过程什么样?麻醉要多长时间?
企业消防安全标准化管理细则制定指南
“3·15晚会”曝光名单全记录
JS实现数字华容道游戏的完整教程
Android 上的麻将:入门基本指南
《最后一个店铺》:展现普通人的希冀与坚持
八字分析个人性格:如何利用八字提升自我
世卫组织:北欧酒类专卖制度有效减少酒精消费与相关危害
酒精对身体的影响:从短期到长期的全面解析
正常人的尿液是什么颜色
居民住宅能否用于公司注册?
如何分析金价掉一个点的市场影响?这种影响对黄金投资有何意义?
UIUC转专业全攻略:CS、工院、商学院转专业要求详解
争取孩子抚养权的条件及要点
围棋入门基本知识口诀