当前位置: 首页 > news >正文

Win11 配置 Git 绑定 Github 账号的方法与问题汇总

目录

  • 一、创建 Github 项目库(远程仓库)
  • 二、配置安装好的 Git
    • 1. 设置用户信息
    • 2. 查看已配置的信息
    • 3. 建立本地仓库
    • 4. Git 常用命令速查表
  • 三、配置 SSH 公钥
    • 1. 生成 ssh key
      • 出现的问题
    • 2. 启动 ssh-agent 并添加秘钥
    • 3. 在 Github 上绑定 ssh 公钥
      • 出现的问题
  • 四、关联本地仓库与 Github 远程仓库
    • 1. 查看 Github 项目库地址
    • 2. 对接本地仓库与远程仓库
      • 1)远程仓库向本地仓库推送(克隆仓库)
      • 2)本地仓库向远程仓库推送(上传代码)
  • 五、其他
    • 1. 注意事项
    • 2. 创建 .config 或 .bashrc 后缀文件
    • 3. 运行 ssh-add -l 失败


默认已注册了 Github 且安装了 Git 。

一、创建 Github 项目库(远程仓库)

登录已创建好的 Github 账户,点击左上角的三条横杠,进入 Home 界面,如下图所示。然后点击绿色的 “New” 按钮,以创建新的项目库。

对创建的项目内容进行填写,例如:项目名称、项目描述、是否所有人均可查看等。最后点击 “Create repository” 即可创建项目。

完成创建项目库后,就需要让自己的电脑克隆一个刚刚创建的库(本地仓库),以方面自己电脑上的代码同步到在 GitHub 创建的库中,这时就需要用到 Git Bash 软件。

二、配置安装好的 Git

1. 设置用户信息

单击打开 Git Bash ,如下图所示:

输入如下命令验证 Git 是否安装成功,若显示版本号,例如 git version 2.x.x 则表示 Git 安装成功。

git --version

输入如下命令设置 Git 用户信息:

git config --global user.name "[用户名]"
git config --global user.email "[用户邮箱]"

下面的命令可以增强输出命令的可读性:

git config --global color.ui auto

注:这里的用户名最好与 GitHub 上的一致,而用户邮箱一定要是注册 GitHub 的那个邮箱地址。如何查看?在 Github 上登陆自己的账户,点击右上角的头像 → “Settings” ,进入设置界面,在左侧列表中选择 “Emails” ,即可查看用户名与用户邮箱(选择 Primary 的那个)。

2. 查看已配置的信息

输入如下命令查看用户信息:

git config --global user.name
git config --global user.email

或者

git config --list

3. 建立本地仓库

在任意位置创建一个空文件夹作为本地的 Git 仓库,进入该文件夹并右键,选择 “显示更多选项” → “Open Git Bash here” ,如下图所示。

执行以下命令生成 .git 文件。

git init
  • 初始化成功则会显示:Initialized empty Git repository in D:/git_warehouse/.git/ 的代码。

  • 输入 ll 指令可以查看仓库文件数量及详情,没有文件即显示:total 0 的代码。

  • 想在目录下显示 .git 隐藏文件,则点击 “查看” → “显示” → “隐藏的项目” 即可。

以下是 Git 仓库的工作流程图以及基本指令(包括添加到暂存区、提交到本地仓库、查看状态、查看提交日志等)

# 跟踪所有改动过的文件,即将所有修改提交到暂存区
git add .
# 将 README.md 提交到暂存区
git add README.md
# 提交所有更新过的文件至本地仓库,提交注释为:xxx
git commit -m "xxx"
# 以上命令执行完毕时,可以使用以下命令查看仓库文件的状态
git status
# 以上命令执行完毕时,可以查看日志(提交历史)
git log
# 撤销工作目录中所有未提交文件的修改内容,即将版本回退到之前提交的版本
git reset commitID --hard

4. Git 常用命令速查表

参考文章:【Git 常用命令速查表(图文+表格)】

三、配置 SSH 公钥

1. 生成 ssh key

在 Git Bash 界面输入 cd ~/.sshls ~/.ssh/id_rsa.pub 命令,若返回 "no such file or directory" 则表明文件不存在,需要创建。输入以下命令创建文件并生成 ssh key :

ssh-keygen -t rsa -C "[用户邮箱]"

连续进行 3 次回车 Enter(确认)即可,然后会在 “C:/Users/[用户名]” 下生成一个 .ssh 文件,里面存储了两个秘钥,id_rsa 文件里存储的是私钥、 id_rsa.pub 文件里存储的是公钥。

用记事本打开 id_rsa.pub 文件,复制里面的内容;或者在 Git Bash 里输入 cat ~/.ssh/id_rsa.pub 命令复制公钥内容。

出现的问题

问题:输入 ssh-keygen -t rsa -C "[用户邮箱]" 出现如下错误:

No such file or directory:没有这样的文件或目录

【问题原因】:本机用户名是中文,由于 Git Bash 的编码设置不支持中文,导致中文乱码,从而生成密钥失败。

【解决方法 1】(失败):修改 Git Bash 编码为 UTF-8 。以下为修改步骤:

  • 右键单击 Git Bash 的顶部边框,选择 “Options”

  • 在左侧列表选择 “Text” ,将 “Locale” 选为 “zh_CN” ,“Character set” 选为 “UTF-8” ,最后点击 “Save” 即可,如下图所示。

  • 重新尝试生成 ssh 密钥。

参考文章:【解决git生成ssh密钥失败问题,本机用户名中文乱码导致密钥生成失败。】

【解决方法 2】(成功):方法 1 并没有解决问题,方法 2 是:通过快捷键 Win+R 打开命令提示符 cmd ,在 cmd 中生成 ssh 密钥,输入命令后连续进行 3 次回车即可。

生成的 id_rsa 和 id_rsa.pub 文件均在 .ssh 文件夹下。

2. 启动 ssh-agent 并添加秘钥

在 Git Bash 里输入如下命令:

eval $(ssh-agent -s)  
ssh-add ~/.ssh/id_rsa

3. 在 Github 上绑定 ssh 公钥

在 Github 上登陆自己的账户,点击右上角的头像,进入 Settings 界面,在左侧列表中选择 “SSH and GPG keys” ,如下图所示。然后点击右上方的 “New SSH key” 绿色按钮。

在如下所示的界面里填写信息,将公钥(id_rsa.pub)里的内容复制进去,最后点击 “Add SSH key” 即可成功添加。

回到 Git Bash 上验证是否配置成功,输入如下命令:

ssh -T git@github.com

如果出现:You've successfully authenticated, but GitHub does not provide shell access. 则说明绑定成功。若中间出现 (yes/no/[fingerprint]) 时,输入 yes 即可。

出现的问题

问题 1 :输入上述命令出现如下错误:

kex_exchange_identification:读取:软件导致连接中止
横幅交换:连接到 20.205.243.166 端口 22:软件导致连接中止

【解决方法】:Git Bash 下使用 SSH 连接出现 “Software caused connection abort” 问题

问题 2 :报错 "The authenticity of host ‘github.com (20.205.243.166)’ can’t be established. "

【解决方法 1】:遇到 (yes/no/[fingerprint]) 时,直接输入 yes 即可。

【解决方法 2】:手动配置 known_hosts 文件,即在 C:/Users/[用户名]/.ssh 文件夹下新建一个 known_hosts 文件,用记事本打开该文件并写入 Github 的 ssh 密钥条目。

ssh 密钥条目如下所示:

github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
github.com ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEmKSENjQEezOmxkZMy7opKgwFB9nkt5YRrYMjNuG5N87uRgg6CLrbo5wAdT/y6v0mKV0U2w0WZ2YB/++Tpockg=
github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=

参考文章:【The authenticity of host ‘github.com (20.205.243.166)‘ can‘t be established. 报错解决】

四、关联本地仓库与 Github 远程仓库

1. 查看 Github 项目库地址

登陆你的 Github 账户进入项目仓库,如下图所示查看该 Github 项目库的地址(HTTPS or SSH 均可)。

了解两个常用的 Git 命令:push 和 pull 。

  • 如果本地仓库的代码有了更新,为了保持本地与远程的代码同步,我们就需要利用 git push origin master 命令把本地的代码 “推给” 远程的仓库。

  • 如果远程仓库的代码有了更新,同样为了保持本地与远程的代码同步,我们就需要利用 git pull origin master 命令把远程的代码 “拉到” 本地的仓库。

2. 对接本地仓库与远程仓库

1)远程仓库向本地仓库推送(克隆仓库)

将 Github 上的项目库克隆到本地电脑上,在本地仓库所在的文件夹下右键选择 “Open Git Bash here” 。

进入 Git Bash 后执行克隆命令:git clone <远程仓库地址>

如下图所示,指定目录已经存在在本地仓库的文件夹下。

2)本地仓库向远程仓库推送(上传代码)

在本地仓库所在的文件夹下右键选择 “Open Git Bash here” ,进入 Git Bash 后执行绑定命令:git remote add <远程仓库名称> <远程仓库地址> ,执行后就可以开始使用本地仓库向远程仓库推送了,输入 git remote 命令查看远程仓库名称。

打开刚刚克隆下来的 TEST 文件夹,在其中创建一个任意格式、任意名称的文件,例如:我在这里创建了一个名叫 text 的 .txt 文件。

在这个文件夹下右键选择 “Open Git Bash here” ,进入 Git Bash 。

  • 执行 git add text.txt 命令将该新文件上传至暂存区。

  • 执行 git commit -m “测试是否成功” 命令将所有更新过的文件提交至本地仓库,且提交注释为:“测试是否成功” ,引号内的内容相当于是上传文件的备注,便于查找。

  • 接着输入 push 指令 git push -u origin main ,将本地仓库的文件提交至远程仓库,如下图所示就代表上传成功了。
    注:红框内是什么,origin 后就跟什么。

打开 GitHub ,可以看到刚刚上传的文件。

注意

git push origin mastergit push -u origin master 的区别主要在于是否设置了上游分支(upstream branch)。

  • git push origin master :

    • 仅把本地的 master 分支推送到远端的 origin 仓库对应的 master 分支。

    • 不设置上游分支,也就是说,以后如果直接运行 git push 或 git pull,Git 不知道默认跟踪哪个远端分支,可能会提示你指定分支。

  • git push -u origin master :

    • 除了推送 master 分支到远端 origin 仓库外,还会把本地 master 分支和远端 origin/master 关联起来,设置本地 master 的上游分支为 origin/master 。

    • 以后可以仅用 git push 或 git pull,Git 会自动推送或拉取相对应的远端分支。

总结:

命令作用
git push origin master推送本地 master 到 origin/master,但不设置上游分支
git push -u origin master推送并设置本地 master 跟踪 origin/master,上下游分支关联

如果是第一次推送某个新的本地分支,建议使用 -u 参数,这样以后操作更方便。

五、其他

1. 注意事项

  • Windows Terminal 默认使用 PowerShell 或 cmd ,也可以安装并开启 Git Bash 终端更方便使用 Git 。

  • 如果想使用 HTTPS 而不是 SSH ,推送时会要求输入 GitHub 账号密码,GitHub 目前使用 Token 代替密码,需要额外配置。

2. 创建 .config 或 .bashrc 后缀文件

  • 在想要创建文件的文件夹下右击鼠标,新建一个 .txt 记事本,名字可以任意取。

  • 打开新建的 .txt 文本,将想要输入的内容粘贴进文本内。

  • 点击记事本左上角的 “文件” ,选择 “另存为” ,然后进行如下图所示的操作。
    注:重命名文件时,一定要带 .config 或 .bashrc 后缀,或者直接输入 .config 或 .bashrc 也行。

  • 此时,该文件夹下就出现了 CONFIG 文件或 Bash RC 源文件,将之前的 .txt 文本删除即可。

3. 运行 ssh-add -l 失败

【问题】:在 Git Bash 中输入 ssh-add -l 但收到 Could not open a connection to your authentication agent 的错误。

【原因】:这通常表明 SSH 代理没有运行或没有正确地被初始化。

【方法】:

  • 启动 SSH 代理:在 Git Bash 上运行 eval $(ssh-agent -s) 命令启动 SSH 代理,这将返回一个类似于 “Agent pid xxx” 的消息,表示 SSH 代理正在运行。

确保在每次打开 Git Bash 时启动 ssh-agent :将以下指令添加到你的 ~/.bashrc 文件中,然后运行 source ~/.bashrc 指令重新加载配置文件。

if [ -f ~/.bash_profile ]; then  . ~/.bash_profile  
fi# Start SSH agent  
eval $(ssh-agent -s)
  • 添加 SSH 密钥:在 Git Bash 上运行 ssh-add ~/.ssh/id_rsa 命令将你的 SSH 密钥添加到代理中。
    注:需要根据你的密钥所处路径以及密钥文件名对上述命令做相应调整。

  • 验证 SSH 密钥:在添加密钥后,可以再次使用 ssh-add -l 验证是否成功添加,如果成功,会看到已添加的密钥列表,类似于 “xxx SHA256:… [你的邮箱] (RSA)” 。

参考文章:
【Github入门教程,适合新手学习(非常详细)】
【Git的配置、本地绑定Github及基本使用】
【git与github账号绑定】
【将Git与Github进行SSH连接】

相关文章:

Win11 配置 Git 绑定 Github 账号的方法与问题汇总

目录 一、创建 Github 项目库&#xff08;远程仓库&#xff09;二、配置安装好的 Git1. 设置用户信息2. 查看已配置的信息3. 建立本地仓库4. Git 常用命令速查表 三、配置 SSH 公钥1. 生成 ssh key出现的问题 2. 启动 ssh-agent 并添加秘钥3. 在 Github 上绑定 ssh 公钥出现的问…...

李臻20242817_安全文件传输系统项目报告_第9周

安全文件传输系统项目报告&#xff08;第 9 周&#xff09; 1. 代码链接 Gitee 仓库地址&#xff1a;https://gitee.com/li-zhen1215/homework/tree/master/Secure-file 代码结构说明&#xff1a; project-root/├── src/ # 源代码目录│ ├── main.c # 主程序入口│ ├…...

OceanBase TPCC测试常见报错汇总

OceanBase TPCC测试常见报错汇总 报错1:加载测试数据时创建tablegroup失败报错2:加载测试数据时执行超时报错3:加载测试数据时funcs.sh函数找不到报错4:加载数据时报错超过租户内存上限办法一:增加租户内存办法二:调高转储线程数办法三:调整MemStore内存占比和冻结触发阈…...

文心一言开发指南06——千帆大模型平台新手指南

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 千帆大模型平台为新手用户提供了一个全面的入门指南&#xff0c;以便用户能够快速熟悉平台的操作和功能。千帆大模型平台通过提供详细的新手指南&#xff0c;确保用户能够顺…...

解决SSLError: [SSL: DECRYPTION_FAILED_OR_BAD_RECORD_MAC] decryption faile的问题

问题描述&#xff1a; 在pip安装第三方库时&#xff0c;出现SSL的问题。 传输层安全性协议&#xff08;TLS&#xff09;及其前身安全套接层&#xff08;SSL&#xff09;是现在的 HTTPS 协议中的一种安全协议&#xff0c;目的是为互联网通信提供安全及数据完整性保障。而较新版…...

Clang中ext_vector_type和address_space __attribute__的使用

Clang中ext_vector_type和address_space __attribute__的使用 一.背景二. 关键概念详解三.示例代码与验证四. 总结 一.背景 在使用 Clang 编译可执行程序时&#xff0c;遇到类似下面的链接错误&#xff1a; undefined reference to atomic_add(int volatile AS4*, int) undef…...

echarts自定义图表

普通柱状图 自定义柱状图 实现思路 4个图层 背景 边框实体 内部透明地步透明间隙红色柱形数据数据使用自定义字体倾斜柱形上方扁平矩形矩形颜色透明 label字体颜色和背景色相同实现矩形块 上下靠padding实现 向下 paddingBottom使用负数 完整代码 <!DOCTYPE html> <…...

【应用密码学】实验二 分组密码(2)

一、实验要求与目的 1&#xff09; 学习AES密码算法原理 2&#xff09; 学习AES密码算法编程实现 二、实验内容与步骤记录&#xff08;只记录关键步骤与结果&#xff0c;可截图&#xff0c;但注意排版与图片大小&#xff09; 字符串加解密 运行python程序&#xff0c;输入…...

【深度学习】多头注意力机制的实现|pytorch

博主简介&#xff1a;努力学习的22级计算机科学与技术本科生一枚&#x1f338;博主主页&#xff1a; Yaoyao2024往期回顾&#xff1a;【深度学习】注意力机制| 基于“上下文”进行编码,用更聪明的矩阵乘法替代笨重的全连接每日一言&#x1f33c;: 路漫漫其修远兮&#xff0c;吾…...

OceanBase数据库磁盘空间管理

OceanBase数据库磁盘空间管理 日志盘空间管理日志盘容量参数日志盘空间满应急处理 数据盘空间管理数据盘容量参数数据文件自动扩展数据盘空间满应急处理表占用的磁盘空间 日志盘空间管理 日志盘容量参数 &#x1f42f; 与日志盘redo_dir相关的四个重要参数&#xff1a; log_…...

自然语言处理之机器翻译:Statistical Machine Translation(SMT)的评估方法解析与创新实践

## 机器翻译与评估的重要性 机器翻译(Machine Translation, MT)作为自然语言处理(NLP)的核心任务之一,旨在通过计算机实现跨语言的信息传递。随着全球化进程加速,机器翻译在商业、科研、社交等领域的应用愈发广泛。然而,翻译质量直接决定了其实际价值,因此**翻译质量…...

数据集下载(AER 和causaldata R包)

1.AER #install.packages("AER") library(AER)# 引用R包 citation("AER") # 参考文献&#xff1a;Kleiber, Christian, and Achim Zeileis. Applied econometrics with R. Springer Science & Business Media, 2008.# 查看有哪些数据集 data(package …...

【Linux系统】详解Linux权限

文章目录 前言一、学习Linux权限的铺垫知识1.Linux的文件分类2.Linux的用户2.1 Linux下用户分类2.2 创建普通用户2.3 切换用户2.4 sudo&#xff08;提升权限的指令&#xff09; 二、Linux权限的概念以及修改方法1.权限的概念2.文件访问权限 和 访问者身份的相关修改&#xff08…...

Go语言--语法基础4--基本数据类型--字符串类型

在 Go 语言中&#xff0c;字符串也是一种基本类型。相比之下&#xff0c; C/C 语言中并不存在原 生的字符串类型&#xff0c; 通常使用字符数组来表示&#xff0c;并以字符指针来传递。 Go 语言中字符串的声明和初始化非常简单&#xff0c;举例如下&#xff1a; var str st…...

分布式GPU上计算长向量模的方法

分布式GPU上计算长向量模的方法 当向量分布在多个GPU卡上时&#xff0c;计算向量模(2-范数)需要以下步骤&#xff1a; 在每个GPU上计算本地数据的平方和跨GPU通信汇总所有平方和在根GPU上计算总和的平方根 实现方法 下面是一个完整的CUDA示例代码&#xff0c;使用NCCL进行多…...

项目班——0422——日志

...

【音视频】音频编码实战

FFmpeg流程 从本地⽂件读取PCM数据进⾏AAC格式编码&#xff0c;然后将编码后的AAC数据存储到本地⽂件。 示例的流程如下所示。 关键函数说明&#xff1a; avcodec_find_encoder&#xff1a;根据指定的AVCodecID查找注册的编码器。avcodec_alloc_context3&#xff1a;为AVCod…...

Git Bash 下使用 SSH 连接出现 “Software caused connection abort” 问题

目录 一、检查网络环境和防火墙设置&#xff08;失败&#xff09;二、尝试使用 GitHub 的备用 SSH 端口 443&#xff08;成功&#xff09;三、检查 SSH Key 是否被正确加载四、检查是否多个 SSH 进程干扰或者服务异常五、使用 HTTPS 方式临时解决&#xff08;非 SSH&#xff09…...

K8S Pod 常见数据存储方案

假设有如下三个节点的 K8S 集群&#xff1a; k8s31master 是控制节点 k8s31node1、k8s31node2 是工作节点 容器运行时是 containerd 一、理论介绍 1.1、Volumes 卷 Kubernetes 的卷是 pod 的⼀个组成部分&#xff0c;因此像容器⼀样在 pod 的规范&#xff08;pod.spec&#x…...

JavaScript 模板字符串:更优雅的字符串处理方式

什么是模板字符串&#xff1f; 模板字符串&#xff08;Template Literals&#xff09;是 ES6&#xff08;ES2015&#xff09;引入的一种新的字符串表示方式&#xff0c;它提供了更强大、更灵活的字符串拼接功能。与传统的字符串使用单引号&#xff08;&#xff09;或双引号&am…...

DeepSeek智能时空数据分析(五):基于区域人口数量绘制地图散点-大模型搜集数据NL2SQL加工数据

序言&#xff1a;时空数据分析很有用&#xff0c;但是GIS/时空数据库技术门槛太高 时空数据分析在优化业务运营中至关重要&#xff0c;然而&#xff0c;三大挑战仍制约其发展&#xff1a;技术门槛高&#xff0c;需融合GIS理论、SQL开发与时空数据库等多领域知识&#xff1b;空…...

PostSwigger 的 CSRF 漏洞总结

本文所提供的关于 web 安全的相关信息、技术讲解及案例分析等内容&#xff0c;仅用于知识分享与学术交流目的&#xff0c;旨在提升读者对 web 安全领域的认知与理解。以下仅仅是作者对 PostSwigger Web 安全的知识整理和分享&#xff0c;严禁任何非法犯罪活动。 限制 CSRF 的三…...

vue项目页面适配

vue项目页面适配 目的&#xff1a;结合动态设置根字体大小的脚本&#xff08;如通过 JavaScript 监听屏幕尺寸变化&#xff09;&#xff0c;实现页面元素在不同设备上的自适应缩放 1、安装postcss-pxtorem ### 若项目未集成 postcss&#xff0c;需同步安装&#xff1a; npm …...

AI-Browser适用于 ChatGPT、Gemini、Claude、DeepSeek、Grok的客户端开源应用程序,集成了 Monaco 编辑器。

一、软件介绍 文末提供程序和源码下载学习 AI-Browser适用于 ChatGPT、Gemini、Claude、DeepSeek、Grok、Felo、Cody、JENOVA、Phind、Perplexity、Genspark 和 Google AI Studio 的客户端应用程序&#xff0c;集成了 Monaco 编辑器。使用 Electron 构建的强大桌面应用程序&a…...

Flutter Dart新特性NulI safety late 关键字、空类型声明符?、非空断言!、required 关键字

目录 late 关键字 required关键词: 常用的Model对象使用required Null safety翻译成中文的意思是空安全 null safety 可以帮助开发者避免一些日常开发中很难被发现的错误&#xff0c;并且额外的好处是可以改善性能后的版本都要求使用nul1 safety。Flutter2.2.0(2021年5月19日…...

CF2096G Wonderful Guessing Game 构造

题解 首先考虑没有 ? ? ? 回答的时候&#xff0c;答案是多少。 猜猜需要多少个询问。 ⌈ log ⁡ 2 n ⌉ ? ⌈ log ⁡ 3 n ⌉ ? \lceil \log_2n\rceil ? \lceil \log_3n\rceil ? ⌈log2​n⌉?⌈log3​n⌉? 可以构造一个表&#xff0c;行表示不同的询问&#xff0c;…...

制作一款打飞机游戏26:精灵编辑器

虽然我们基本上已经重建了Axel编辑器&#xff0c;但我不想直接使用它。我想创建一个真正适合我们当前目的的编辑器&#xff0c;那就是编辑精灵&#xff08;sprites&#xff09;。这将是今天的一个大目标——创建一个基于模板的编辑器&#xff0c;用它作为我们实际编辑器的起点。…...

深入Java JVM常见问题及解决方案

1. 简介 Java虚拟机&#xff08;JVM&#xff09;是Java程序运行的核心环境&#xff0c;但其复杂性可能导致内存泄漏、性能下降、类加载失败等问题。本文从内存管理、垃圾回收、性能调优、异常处理四大方向&#xff0c;结合工具使用与实战案例&#xff0c;详解JVM问题的排查与解…...

【MySQL】Java代码操作MySQL数据库 —— JDBC编程

目录 1. Java的JDBC编程 1.1 Java的数据库编程&#xff1a;JDBC 1.2 JDBC工作原理 1.3 如何在项目中导入数据库驱动包 如何下载数据库驱动包 jar包如何引入项目中 2. 编写JDBC代码 1. 创建并初始化一个数据源(DataSource) 2. 和数据库服务器建立连接 3. 构造 SQL 语句…...

Marmoset Toolbag 5.0 中文汉化版 八猴软件中文汉化版 免费下载

八猴安装包下载链接 https://pan.baidu.com/s/1Mgy3Mrlrb3Tvtc8w7Zn1nA?pwd6666 提取码&#xff1a;6666 Marmoset Toolbag是由Monkey公司推出一款专业动画渲染软件&#xff0c;也叫做八猴渲染器。该软件主要特征功能是可以进行实时模型观察、材质编辑和动画预览&#xff0c;…...

Java编程中常见错误的总结和解决方法

1. 找不到文件 问题描述&#xff1a;尝试编译一个名为ChangeCha.java的文件&#xff0c;但编译器找不到这个文件。错误信息&#xff1a;javac: 找不到文件: ChangeCha.java解决方法&#xff1a;检查文件名是否正确&#xff0c;文件是否存在于当前目录&#xff0c;或者路径是否…...

【GESP】C++三级练习 luogu-B2114 配对碱基链

GESP三级练习&#xff0c;字符串练习&#xff08;C三级大纲中6号知识点&#xff0c;字符串&#xff09;&#xff0c;难度★✮☆☆☆。 题目题解详见&#xff1a;https://www.coderli.com/gesp-3-luogu-b2114/ 【GESP】C三级练习 luogu-B2114 配对碱基链 | OneCoderGESP三级练…...

C++类设计新思路:封装结构体成员变量

C++类设计新思路:封装结构体成员变量 引言 在C++编程里,类是封装数据和行为的重要手段。常规的类设计直接把成员变量定义在类中,再通过成员函数访问和修改这些变量。不过,有时候我们可以采用不同的设计思路,例如将成员变量封装到结构体里,这样可能会带来一些好处。本文…...

图像预处理-形态学变换

针对二值化图像&#xff0c;其有两个输入&#xff0c;一个输出&#xff1a;输入为原图像、核&#xff08;结构化元素&#xff09;&#xff0c;输出为形态学变换后的图像。基本操作有腐蚀和膨胀。 一.核 联想到之前的卷积核&#xff0c;也是一种核。 此时的核就跟卷积核不太一…...

关于百度模型迭代个人见解:技术竞速下的应用价值守恒定律

就在前天&#xff0c;在 2025 年 4 月 25 日的百度 Create 开发者大会上&#xff0c;文心大模型 4.5 Turbo 与 X1 Turbo 的发布再次将 AI 行业带入 "涡轮加速" 时代。这两款模型不仅在多模态理解、逻辑推理等核心指标上实现突破&#xff0c;更以80% 的价格降幅重塑行…...

从基础到实战的量化交易全流程学习:1.3 数学与统计学基础——概率与统计基础 | 基础概念

从基础到实战的量化交易全流程学习&#xff1a;1.3 数学与统计学基础——概率与统计基础 | 基础概念 第一部分&#xff1a;概率与统计基础 第1节&#xff1a;基础概念&#xff1a;随机变量、概率分布、大数定律与中心极限定理 一、随机变量与概率分布&#xff1a;用数学描述市场…...

混沌工程领域常用工具的对比分析

以下是混沌工程领域常用工具的对比分析,涵盖主流工具的核心功能、优势、适用场景及局限性,帮助技术团队根据自身需求选择合适的工具: 一、故障注入工具对比 工具核心特点优势适用场景局限性生态集成开源/付费Chaos MonkeyNetflix 开源,随机终止生产环境实例,模拟硬件/进程…...

LINUX的使用(2)- 安装软件

0.防火墙相关 启动防火墙&#xff1a; sudo systemctl start firewalld #查看防火墙列表 firewall-cmd --list-ports 设置防火墙开机自启&#xff1a; sudo systemctl enable firewalld 检查防火墙状态&#xff1a; sudo firewall-cmd --state 允许某个端口&#xff08;如端…...

一主多从+自组网络,无线模拟量信号传输专治布线PTSD

无线模拟量信号传输模块通过无线方式实现模拟量信号的传输&#xff0c;采集工业现场标准4~20mA电流信号&#xff0c;并将其转换为无线信号进行传输。 以下是关于无线模拟量信号传输模块实现无线模拟量信号传输的详细介绍&#xff1a; 一、模块原理 无线模拟量信号传输模块的…...

IDEA中使用Git

Git工作流程 创建远程仓库 现在我们已经在本地创建了一个Git仓库&#xff0c;但是这只能满足我们单人开发&#xff0c;如果想要团队协作&#xff0c;还需要一个远程仓库 目前比较流行的远程仓库&#xff0c;有下面这两个&#xff1a; github&#xff1a;https://github.com …...

Go RPC 服务方法签名的要求

在 Go 中&#xff0c;RPC 方法的签名有严格的要求&#xff0c;主要是为了保证方法的调用能够通过网络正确地传输和解析。具体要求如下&#xff1a; 1. 方法必须是导出的 RPC 服务的方法必须是导出的&#xff08;即首字母大写&#xff09;。这是因为 Go 的反射机制要求服务方法…...

Ant(Ubuntu 18.04.6 LTS)安装笔记

一、前言 本文与【MySQL 8&#xff08;Ubuntu 18.04.6 LTS&#xff09;安装笔记】同批次&#xff1a;先搭建数据库&#xff0c;再安装JDK&#xff0c;后面肯定就是部署Web应用。其中Web应用的部署使用 Ant 方式&#xff0c;善始善终&#xff0c;特以笔记。 二、准备 &#xf…...

相机DreamCamera2录像模式适配尺寸

在开发中遇到 一个问题&#xff0c;相机切换视频模式时&#xff0c;预览时&#xff0c;界面不能充满屏幕两侧有黑边&#xff0c;客户要求修改&#xff0c;在此记录 一问题现象&#xff1a; 系统相机在视频模式下预览时如下现象如图1&#xff0c;期望现象如图2: 图1 …...

Animate 中HTMLCanvas 画布下实现拖拽、释放、吸附的拼图游戏

1.舞台上物体拖拽 2.松手以后&#xff0c;检查是否移动到范围内&#xff0c;是则自动吸附 3.播放音效 4.变量1&#xff0c;显示在舞台的动态文本中 1.实现拖拽 下面代码实现拖拽和释放 地图模块 //记录原始位置 var OriXthis.my_mc.x; var OriYthis.my_mc.y;this.my_mc.on(&q…...

第十一章-PHP表单传值

第十一章-PHP表单传值 一&#xff0c;核心概念 1. 表单的基本结构&#xff08;HTML&#xff09; 通过HTML的<form>标签定义表单&#xff0c;关键属性包括&#xff1a; action: 指定处理表单数据的PHP脚本路径&#xff08;如action"process.php"&#xff09…...

互联网大厂Java求职面试:从Java核心到微服务的深度探索

场景引入: 在一个阳光明媚的早上,谢飞机满怀信心地走进了一家知名互联网大厂的面试房间。面试官坐在桌子的另一端,手中拿着一份简历,面带微笑地开始了今天的面试。 第一轮提问:核心语言与平台 面试官: "谢飞机,你好。我看到你熟悉Java SE,能不能简单介绍一下Ja…...

微服务即时通信系统(十二)---入口网关子服务

目录 功能设计 模块划分 业务接口/功能示意图 服务实现流程 网关HTTP接口 网关WebSocket接口 总体流程 服务代码实现 客户端长连接管理封装(connectionManage.hpp) proto文件的编写 身份鉴权proto 事件通知proto 各项请求的URL的确定 服务端完成入口网关服务类…...

ES练习册

es索引结构和数据实例 这里提供索引结构和数据实例提供给大家使用练习&#xff0c;希望大家能够一起成长进步~~~~ #添加索引 PUT /ecommerce_products {"settings": {"number_of_shards": 3,"number_of_replicas": 1,"analysis": {&…...

运算符分为哪几类?哪些运算符常用作判断?简述运算符的优先级

运算符主要分为以下几类‌&#xff1a; ‌算术运算符‌&#xff1a;用于执行基本的数学运算&#xff0c;如加、减、乘、除、取模等。例如&#xff1a;、-、*、/、%‌。‌赋值运算符‌&#xff1a;用于将值赋给变量。例如&#xff1a;、、-、*、/、%‌。‌比较运算符‌&#xff…...

shell编程基础知识及脚本示例

文章目录 前言一、shell变量1.命名规则2.定义及使用变量 二、shell传递参数1.位置参数2. 任意参数 三、shell一维数组0.定义方式1.定义并获取数组的单个元素2.定义并获取数组的所有元素3.定义并获取数组的元素个数4.定义并获取数组的元素索引 四、shell条件判断语法五、shell常…...