Ubuntu系统使用快速入门实践(八)—— git 命令使用

Ubuntu系统使用快速入门实践系列文章

下面是Ubuntu系统使用系列文章的总链接,本人发表这个系列的文章链接均收录于此

Ubuntu系统使用快速入门实践系列文章总链接


下面是专栏地址:

Ubuntu系统使用快速入门实践系列文章专栏


文章目录

  • Ubuntu系统使用快速入门实践系列文章
    • Ubuntu系统使用快速入门实践系列文章总链接
    • Ubuntu系统使用快速入门实践系列文章专栏
  • 前言
  • Ubuntu系统使用快速入门实践(八)—— git 命令使用
    • 安装git
    • 修改host文件来访问GitHub
      • git clone 速度慢的问题
      • 一、查询ip地址
      • 二、修改host文件
      • 三、更新dns缓存
    • git使用
      • 测试ssh
      • 建立公钥
      • github上建立新的仓库
      • 建立本地仓库
      • 提交到github
        • 法1:HTTP方式
        • 法2:SSH方式
        • 出现错误
      • 修改后再次提交
      • 提交大文件
      • 上传空文件夹
      • 撤销add和commit
      • 更换远程仓库
      • 其他操作
      • 常用命令
      • 多人合作
      • 下载指定分支tags的代码
    • 克隆私有项目
    • 设置仓库为private或public
    • 遇到的问题
      • 错误1
      • 错误2
      • 错误3
      • 错误4


前言

Ubuntu是一个以桌面应用为主的Linux发行版操作系统,也是大多数人第一个接触到的Linux系统,尤其是从事理工科研究工作的人,这个系列的文章主要讲述如何使用Ubuntu系统,完成日常的学习、科研以及工作


Ubuntu系统使用快速入门实践(八)—— git 命令使用

安装git

终端使用以下命令:

sudo apt install git

修改host文件来访问GitHub

参考:修改host文件来访问GitHub

说明

国内无法访问GitHub的问题除了用某工具访问,还可以通过host文件来达到效果,缺点就是需要经常更新ip地址。

git clone 速度慢的问题

参考:

解决git clone 速度慢的问题

git clone特别慢是因为 github.global.ssl.fastly.net 域名被限制了。

只要找到这个域名对应的ip地址,然后在hosts文件中加上ip–>域名的映射,刷新DNS缓存便可。

一、查询ip地址

通过以下网址来查询

http://ip.tool.chinaz.com/

https://www.ipip.net/

https://www.ipaddress.com/

查询下列三个网址的IP

github.com
assets-cdn.github.com
github.global.ssl.fastly.net

https://www.ipaddress.com/ 的查询结果如下

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

二、修改host文件

host文件在

(Windows系统)

C:\Windows\System32\drivers\etc

(linux系统)

/etc/hosts

打开host文件之前先修改权限

方法:

新开一个终端窗口进入路径/etc,查看hosts的权限

ls -l hosts

可以看到,其的拥有者和所属组为root,对于其他用户只对其有只读权限,所以在当前的用户下无法对其进行写的操作,本人是采用先将本用户改为其拥有者,对其修改后再将拥有者改回。

先修改所拥有者 sudo chown yangtsejin hosts

在这里插入图片描述

再在/ect目录下打开hosts,添加数据行,添加完后将拥有者改回root

在这里插入图片描述

如此处添加行

20.205.243.166       github.com
185.199.111.153    assets-cdn.github.com
182.50.139.56        github.global.ssl.fastly.net

在这里插入图片描述

有时候用git clone下载文件很慢,要将IP改为国外的IP,再用梯子下载

#github start151.101.1.194 github.global.ssl.fastly.net
151.101.65.194 github.global.ssl.fastly.net
151.101.129.194 github.global.ssl.fastly.net
151.101.193.194 github.global.ssl.fastly.net# 下面的截图IP地址有误,以这里为准
140.82.114.3 github.com185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com# github end

在这里插入图片描述

三、更新dns缓存

参考:

ubuntu 20.04清除DNS缓存

ubuntu刷新自己dns

Windows中用cmd(以管理员身份)输入

ipconfig/flushdns

将DNS设置为 8.8.8.8,为谷歌的服务器

在Ubuntu中使用命令

# 我的Ubuntu没有这个命令
sudo /etc/init.d/dns-clean start# 或者
sudo apt-get install nscd
sudo /etc/init.d/nscd restart# 或者暴力重启刷新DNS
sudo /etc/init.d/networking restart# (推荐)等待几秒钟,清除DNS缓存的命令就会执行完毕。
sudo systemd-resolve --flush-caches
#或者
sudo systemctl restart systemd-resolved

git使用

参考:

Ubuntu20.04下使用git上传本地项目

【git】git@github.com: Permission denied (publickey).报错问题

Ubuntu系统下如何提交代码到GitHub

如何使用git上传文件到Github远程仓库(完整详细流程)

git文档:https://git-scm.com/book/zh/v2

git流程

在这里插入图片描述

测试ssh

在终端输入

ssh -T git@github.com

显示:

git@github.com: Permission denied (publickey).

在这里插入图片描述

这时候需要建立公钥。

建立公钥

如果要连接github,那么每一台设备要单独设置一个密钥

在github上按照下图点击,找到如下界面:

1)右上角找到并点击settings

在这里插入图片描述

2)左边找到并点击SSH and GPG keys,添加 SSH key

在这里插入图片描述

出现如下界面

在这里插入图片描述

3)在该界面找到 New SSH Key,并点击

在这里插入图片描述

4)返回终端输入

ssh-keygen -C "xx@xx.com" -f ~/.ssh/github

邮箱为自己创建github时用的邮箱,按两次Enter,出现如下代码:

Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/jin/.ssh/github
Your public key has been saved in /home/jin/.ssh/github.pub
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxx@gmail.com

5)在终端输入命令

cat ~/.ssh/github.pub

出现公钥,将公钥复制到第3)步的key里面,title随便写个名字即可,然后点击Add SSH Key。

在这里插入图片描述

在这里插入图片描述

6)在终端输入命令

ssh -T git@github.com

出现以下代码意味着该步骤完成。

Hi wwtx! You've successfully authenticated, but GitHub does not provide shell access.

如果添加完密钥后还是出现无法连接的情况

在这里插入图片描述

因为不能用SSH来输入 ssh -T git@github.com 命令,要用主机先连接才能使用

github上建立新的仓库

点击Repositories,然后点击New新建一个仓库

在这里插入图片描述

点击进入建立的仓库中,界面如下:

在这里插入图片描述

建立本地仓库

1.在自己的Ubuntu系统下建立自己的本地仓库(文件夹),可以用ll命令查看生成的.git初始化文件

git init
ll

2.创建自己需要提交的文档,例如

echo "# test" >> test.txt

3.查看文件状态

git status

显示都还未提交

在这里插入图片描述

4.追踪文件

git add test.txt
#或者
git add . # 把当前文件夹下的所有文件加入提交的cachegit rm --cached test.txt # 取消追踪文件

在这里插入图片描述

5.提交修改的文件到本地仓库

# 添加文件备注
git commit -m "注释"
git commit -m "first blog"

这时提示我要输入自己的信息

在这里插入图片描述

配置完成后可以正常提交

在这里插入图片描述

提交到github

git push的一般形式为

git push <远程主机名> <本地分支名> <远程分支名> 

提交到github仓库

法1:HTTP方式

因为本地的分支默认为master,如果是推送到main分支,则

git推送代码到main分支

# 切换到main分支并进入
git checkout -b main#删除本地的master分支
git branch -D master # 推送时用下面的命令
git push -u origin main

如果不用切换到main分支,则如下

git remote add <名称> <地址>
# 例如:(建立的仓库中有引导的命令行)
git remote add origin https://github.com/Aidensjl/file.git
git branch -M master
git push -u origin master# 如果提示需要输入密码,则用下面的命令
# xxx换为你的令牌
git remote set-url origin https://xxx@github.com/Aidensjl/file.git
git push -u origin master
法2:SSH方式

参考:

使用SSH建立Git 远程仓库和本地库连接

  • 法1是使用自定义使用时长的token上传代码
  • 法2是保存github的秘钥后,可以直接push代码

使用SSH方式方便很多,因为HTTPS方式每次新建仓库都需要用户验证,输入远程的密钥。

SSH密钥添加到本地电脑,并且验证成功后,复制仓库中的SSH地址,即可直接提交,如下所示

git remote add origin git@github.com:yangtseJin/FAST_LIO-Study.git
git push -u origin main
出现错误

这里提交时,需要输入账号密码,然后出现错误

在这里插入图片描述

问题解决

出现的原因是自从 21 年 8 月 13 后不再支持用户名密码的方式验证了,需要创建个人访问令牌(personal access token)。

在github主页的用户setting中选择Developer setting 生成personal access tokens,选项全选,生成的令牌记得保存,只会出现这一次!!!

在这里插入图片描述

修改现有的url

git remote set-url origin  https://<your_token>@github.com/<USERNAME>/<REPO>.git
# 将<your_token>换成你自己得到的令牌。<USERNAME>是你自己github的用户名,<REPO>是你的项目名称
# 例如:xxx换为你的令牌
# 通常Token的有效期最多是30天,也就是说登录成功后,30天内做的任何提交到远程都不需要再次登录,但是可以自己设置有效期,最多
git remote set-url origin https://xxx@github.com/Aidensjl/file.git
# 最后
git push -u origin master

设置有效时间为90天

在这里插入图片描述

下面的所有选项全部勾选,其实勾选 repo 和 workflow即可

在这里插入图片描述

设置完成

在这里插入图片描述

然后设置 url,完成后即可正常push代码

在这里插入图片描述

修改后再次提交

参考:

Git Commit基础知识

一文教你如何设置git commit模板规范

代码已经提交过了,修改后需要再次提交,按如下命令

git add .
git status
git commit -m "modified"
git push

提交完成后,如果您意识到提交消息不正确或有些文件丢失,可以修改先前的提交。

git commit --amend -m "New commit message"

此命令允许您修改先前的提交消息或向先前的提交添加文件。新更改将添加到先前的提交中,并进行更新。

直接在文件中修改即可

在这里插入图片描述

Git提交命令使用摘要

以下是Git提交命令使用摘要:

  • git commit -m "提交信息":创建一个带有提交信息的新提交。
  • git add .:将所有文件添加到暂存区。
  • git add <文件名>:将指定文件添加到暂存区。
  • git branch <分支名>:创建新分支。
  • git checkout <分支名>:切换到指定分支。
  • git commit --amend -m "新的提交信息":修改先前提交的提交信息。
  • GIT_AUTHOR_DATE="YYYY-MM-DD HH:MM:SS TZ" GIT_COMMITTER_DATE="YYYY-MM-DD HH:MM:SS TZ" git commit -m "提交信息":创建一个带有特定日期的提交。
  • git add -p <文件名>:提交对文件的部分更改。

提交大文件

参考:

解决github上传大文件超过100M的问题

【Git】保姆级教程:如何在 GitHub 上传大文件(≥100M)?(含自己的操作流程)

轻松上传超过100M的文件至GitHub

Git LFS的下载安装

  • 官网:https://git-lfs.github.com/
  • mac利用brew来下载:brew install git-lfs
  • linux利用apt-get来下载:apt-get install git-lfs
  • Windows利用scoop来下载: scoop install git-lfs

输入下面的命令,检查 Git LFS 是否安装好了,并初始化

git lfs install

在这里插入图片描述

这表示 Git LFS 已成功安装和初始化。

现在,你的系统已安装 Git LFS,并可以在 Git 仓库中使用 Git LFS 来管理大文件。你可以使用其他 Git LFS 命令来跟踪大文件、添加文件到 Git LFS 管理、推送和拉取文件等操作。请确保你的 Git 服务器和其他协作者也已正确配置和支持 Git LFS,以便顺利地使用 Git LFS 功能。

如果已经输入了上面的语句,再次输入会出现下图结果:

在这里插入图片描述

跟踪一下你要上传(push)的文件或指定文件类型

git lfs track "*.pth"

这将告诉 Git LFS 跟踪所有扩展名为 .pth 的文件,并使用 Git LFS 进行管理。

完成上述步骤后,Git LFS 将会跟踪并管理所有匹配 .pth 扩展名的文件。在提交、推送和拉取时,Git LFS 会相应地处理这些大文件,确保它们被正确地上传和下载。

添加.gitattributes
.gitattributes 是 Git 的一个配置文件,用于指定特定文件或文件类型的属性和处理方式。它可以用于定义 Git 在处理文件时的行为,例如在版本控制、合并和检出文件时的属性设置。

.gitattributes 文件的作用包括:

  • 文件属性设置:你可以使用 .gitattributes 文件指定特定文件或文件类型的属性。例如,你可以定义某个文件应被视为二进制文件,或者使用 Git LFS 进行管理。
  • 文本处理:.gitattributes 文件可以用于指定文本文件的行尾格式(如 CRLF 或 LF),这对于跨平台协作很有用。你可以设置文件的 text 或 binary 属性,控制 Git 是否将其视为文本文件。
  • 合并策略:通过 .gitattributes 文件,你可以为不同类型的文件指定合并策略,以决定在合并分支时如何处理这些文件的冲突。
  • 过滤和清理:.gitattributes 文件允许你配置 Git 过滤器,以在提交或检出文件时执行自定义的过滤和清理操作。这对于对文件进行自动处理、格式转换或敏感信息过滤很有用。

.gitattributes 文件的语法是基于模式匹配的,你可以使用通配符、正则表达式和文件路径模式来匹配文件,并为其指定相应的属性和操作。

请注意,.gitattributes 文件需要添加到 Git 仓库,并确保其他协作者在克隆或拉取仓库时能够正确应用这些属性规则。

只有先把".gitattributes"传上去,才可以上传大文件。在命令行终端中,使用 Git 命令将 .gitattributes 文件添加到仓库并提交:

git add .gitattributes
git commit -m "submit file"
git push -u origin master

回车

PS:最终上传完毕后会在GitHub上看到:

在这里插入图片描述

上传完毕后,开始上传大文件。

然后添加要上传(push)的文件并提交(commit),方法和之前一样

如果提交时显示下面的错误

在这里插入图片描述

则将命令复制一遍输入即可

git config lfs.https://github.com/yangtseJin/Matlab-GUI-Projects.git/info/lfs.locksverify false

上传空文件夹

参考:

git 上传空文件夹

空文件夹默认不会上传到远程仓库。如果想在远程仓库中保存一个空文件夹作为占位符的话,可以在空文件中创建一个.gitkeep 文件即可

touch .gitkeep

说白了就是再创建一个空文件,使得你的文件夹不是空文件夹了,这是个取巧的做法。

更合理的做法是:在空文件夹下新建.gitignore文件,文件内容:

# Ignore everything in this directory
*
# Except this file
!.gitignore

这样一来,这就才是名副其实的空文件夹,除了.gitignore的其它文件都会被忽略掉!

撤销add和commit

参考:

撤销 git add 和 git commit 操作

  1. 撤销 git add

如果是撤销所有的已经add的文件:

git reset HEAD -- .

如果是撤销某个文件或文件夹:

git reset HEAD -- filename
  1. 撤销 git commit
git reset --soft HEAD^

HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2

其他参数解析:

  • –soft
    不删除工作空间改动代码,撤销commit,不撤销git add .
  • –mixed
    不删除工作空间改动代码,撤销commit,并且撤销git add .
    这个为默认参数, git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
  • –hard
    删除工作空间改动代码,撤销commit,并且撤销git add .

补充:如果该仓库到目前为止只有commit过一次代码,则会报错:

$ git reset HEAD^
fatal: ambiguous argument 'HEAD^': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

更换远程仓库

参考:

git通过命令更换远程仓库地址-----和更换地址后对项目进行操作显示无权限问题

方法一 : 通过命令直接修改远程仓库地址

git remote 查看所有远程仓库
git remote xxx 查看指定远程仓库地址
git remote set-url origin 你新的远程仓库地址

方法二: 先删除在添加你的远程仓库

git remote rm origin
git remote add origin 你的新远程仓库地址

方法三: 直接修改你本地的.git文件

这里需要注意的问题是需要进入你的项目目录中
例如:你的项目名为test,那么你就进入test文件夹。
.git文件是隐藏文件你需要显示隐藏文件才能看见

其他操作

查看历史提交记录

git log

在这里插入图片描述

查看当前有哪些分支

git branch

在这里插入图片描述

注:没有创建分支的情况下,只有master

添加分支

git checkout -b  分支名称 
git branch –d  分支名称   #删除分支

注:回到主分支 git checkout master

回到历史的某个版本

git check commit  id编号

注:id 可以用git log 查找

把文件push到网站上

git push origin master

注:一般在git add 及 git commit -m ‘xx’ 之后

列出远程分支

git remote
git remote -v     #列出详细信息
git remote add origin https://github.com/wkslearner/scikit_learn.git

在这里插入图片描述

把缓存区数据添加到远程

参考:

Git入门——Git push 常见用法

git push -u origin sk_learn

把缓存区数据提交到仓库

git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名>,例如 git push origin master:refs/for/master ,即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名。

  • git push origin master

如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建

  • git push origin :refs/for/master

如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin —delete master

  • git push origin

如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支

  • git push

如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用 git branch -r ,查看远程的分支名

常用举例

git push <本地分支的名字> : <远程库的名字>

git push 肯定是推送

origin : 是远程的库的名字

HEAD: 是一个特别的指针,它是一个指向你正在工作的本地分支的指针,可以把它当做本地分支的别名,git这样就可以知道你工作在哪个分支

refs/for :意义在于我们提交代码到服务器之后是需要经过code review 之后才能进行merge的

refs/heads 不需要通过git status命令可以查看当前工作区和暂存区文件的状态。

常用命令

git status //状态查看
git add . //追踪
git config -l //配置查看
git config --unset XXX //取消某些配置
git commit -m "xxx" // 提交
git push -u 名称 分支 //上传
git log --oneline --decorate --graph --all //查看分支结构
git branch -d xxx //删除本地分支
git checkout xxx //切换分支
git checkout -b xxx //新建本地分支
git merge --no-ff xxx //不采用快照ff模式,合并到xxx位置
git pull --rebase //将远端仓库的修改和本地的修改进行合并形成最新的提交
git push origin xxx //建好本地分支后,在输入该指令建立远程分支
git push origin :xxx //删除远程分支但是不会删除本地分支

多人合作

如果是在另外电脑向同一个远程仓库进行提交(可以看作多人合作)

不是直接git init,而是将远程仓库进行git clone 下来进行修改,然后进行提交就可以

不然会出现无法提交,或者需要git pull等问题

回到原本的仓库,由于远程仓库已经被修改,需要 git pull 拉取更改后的仓库文件,然后进行后续修改操作

下载指定分支tags的代码

参考:

GitHub下载克隆clone指定的分支tags代码

解决方法:
命令:

git clone -b [tags标签] [git地址]

例如:

git clone -b v2.0.2 https://github.com/spring-projects/spring-retry.git

若想对克隆后的项目重命名则可执行以下命令

git clone -b [tags标签] [git地址] [重命名]

例如:

git clone -b v2.0.2 https://github.com/spring-projects/spring-retry.git spring-retry-2.0.2

克隆私有项目

如果是public的项目,可以直接克隆,如果是private的项目,克隆时需要输入token

# 在github.com前面加上上面拿到的 access token 和 token的名字
# 示例: tokens-name:tokens 
git clone https://tokens-name:tokens@github.com/yangtseJin/VINS-Mono-Study.git

注意:

这里在token前面要加上token的名字,不像http上传时只加token,

token name如下

在这里插入图片描述

示例如下

在这里插入图片描述

设置仓库为private或public

参考:

Github私有仓库改为公开仓库

选择 Settings

在这里插入图片描述

选择仓库的可见性

在这里插入图片描述

遇到的问题

错误1

参考:

WSL-Ubuntu系统中git使用报错问题解决:GnuTLS recv error (-110): The TLS connection was non-properly terminated

提交时报错

fatal: unable to access 'https://github.com/yangtseJin/VINS-Fusion-Study.git/': GnuTLS recv error (-110): The TLS connection was non-properly terminated.

在这里插入图片描述

只需要更新一下git就好了

sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git

错误2

参考:

git 报错:Updates were rejected because the remote contains work that you do问题

[git出现这种错误是什么原因?error :hint?](https://segmentfault.com/q/1010000002736986)

被拒绝提交

 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://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@github.com/yangtseJin/VINS-Fusion-Study.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

在这里插入图片描述

远程分支上存在本地分支中不存在的提交,往往是多人协作开发过程中遇到的问题,可以先fetchmerge,也就是pull,把远程分支上的提交合并到本地分支之后再push

如果你确定远程分支上那些提交都不需要了,那么直接

git push origin master -f

强行让本地分支覆盖远程分支

错误3

参考:

git 解决push报错:[rejected] master -> master (fetch first) error: failed to push some refs to

我在线上生成了README,但是本地没有,就会报拒绝连接的错误

在这里插入图片描述

解决办法:

将线上、线下代码进行合并

git pull --rebase origin master

然后再进行push

git push origin master

错误4

参考:

Git:解决报错:fatal: The remote end hung up unexpectedly

Github issue. fatal: the remote end hung up unexpectedly

上传代码时报如下错误,

fatal: the remote end hung up unexpectedly

在这里插入图片描述

解决办法1:

修改设置git config文件的postBuffer的大小。(设置为500MB)

git config --local http.postBuffer 524288000

注:–local选项指定这个设置只对当前仓库生效。

但是设置了文件大小也不行?

还可以设置更大一点的缓存区

https://github.com/huggingface/transformers/issues/17813#issuecomment-1638743895

git config http.postBuffer 99999999

解决办法2:

直接修改本地仓库的.config文件。

增加下图所示的两行内容

[http]postBuffer = 524288000

解决办法3:

使用仓库的SSH地址提交,而不用HTTP地址提交

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/31925.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JupyterLab使用指南(八):更改JupterLab左侧默认打开目录

在JupyterLab中&#xff0c;默认打开路径通常是由其配置文件中的root_dir设置决定的。如果你没有特意设置这个配置项&#xff0c;JupyterLab可能会使用当前用户的主目录或者上一次关闭时的路径作为默认打开路径。 更改JupyterLab默认路径的操作在不同操作系统下大体相似&…

windows使用curl命令出现乱码的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

海口注册公司代理记账的服务优势与流程解析

在海口注册公司加入代理记账服务有多种优势。代理记账公司提供专业的财务服务&#xff0c;帮助企业节约成本、提高效率&#xff0c;实现财务管理的合规性。以下是代理记账服务的主要优势和流程解析&#xff1a; https://www.9733.cn/news/detail/173.html 一、代理记账服务的…

分布式光纤测温DTS在工程现场中稳定性与可靠性如何?

20年前&#xff0c;分布式光纤测温(Distributed Temperature Sensing&#xff0c;DTS)技术的发展尚不成熟&#xff0c;设备成本高昂&#xff0c;其稳定性与可靠性也存在一定问题。然而&#xff0c;经过二十多年的不断发展与创新&#xff0c;DTS技术在工程现场应用中取得了显著进…

企业智慧办公管理平台

摘要 在之前的疫情中&#xff0c;大多数企业都受到了较大的冲击&#xff0c;然而一些公司却因为工作的特殊性可以居家远程办公&#xff0c;不过这些企业在管理员工的过程中却遇到了较大的困难&#xff0c;这是因为这些企业的管理系统根本大多都无法管理员工的工作项目&#xf…

场外个股期权怎么看涨跌情况?怎么判断是选涨还是选跌?

今天带你了解场外个股期权怎么看涨跌情况&#xff1f;怎么判断是选涨还是选跌&#xff1f;在期权市场中&#xff0c;投资者想要在其中获得盈利&#xff0c;学会判断涨跌是期权投资者赚钱路上要走的第一步。 判断场外个股期权的涨跌情况主要可以从以下几个方面入手&#xff1a; …

Eigen矩阵模板类------c++

头文件 #include <Eigen/Core> #include <Eigen/Dense>矩阵 // 定义了一个2x3的浮点型矩阵 Eigen::Matrix<float, 2, 3> matrix_23;matrix_23 << 1, 2, 3, 4, 5, 6;cout << "matri_23" << endl;cout << matrix_23 <&l…

激励-保健理论和公平理论

激励-保健理论 herzberg的激励-保健理论中&#xff0c;保健因素是context of a job&#xff0c;激励因素是content of a job。 context of a job是受组织控制的因素&#xff0c;比如工作条件&#xff0c;基本工资&#xff0c;公司政策等&#xff0c;个人无法支配。content of…

【C语言】解决C语言报错:Buffer Overflow

文章目录 简介什么是Buffer OverflowBuffer Overflow的常见原因如何检测和调试Buffer Overflow解决Buffer Overflow的最佳实践详细实例解析示例1&#xff1a;字符串操作不当示例2&#xff1a;数组访问越界示例3&#xff1a;未检查输入长度示例4&#xff1a;使用不安全的函数 进…

Introduction to linear optimization 第 2 章课后题答案 11-15

线性规划导论 Introduction to linear optimization (Dimitris Bertsimas and John N. Tsitsiklis, Athena Scientific, 1997)&#xff0c; 这本书的课后题答案我整理成了一个 Jupyter book&#xff0c;发布在网址&#xff1a; https://robinchen121.github.io/manual-introdu…

Day13-Spark SQL的学习

Spark SQL的学习 一.Spark SQL基础 二.Spark SQL整合hive 文章目录 Spark SQL的学习一、Spark SQL基础Spark SQL介绍DataFrame和DataSetSpark SQL的基本使用Spark SQL基本使用案例 Spark SQL函数内置函数自定义函数窗口&#xff08;开窗&#xff09;函数 二、Spark SQL整合Hiv…

【Redis】内存回收和内存淘汰机制

1 概念 Redis 所有的数据都是存储在内存中的, 如果不进行任何的内存回收, 那么很容易出现内存爆满的情况。因此&#xff0c;在某些情况下需要对占用的内存空间进行释放。 Redis 中内存的释放主要分为两类 Redis 中内存的释放主要分为两类: 内存回收: 将过期的 key 清除&#…

MySQL的DDL语句

文章目录 ☃️概述☃️DDL&#xff08;数据定义语言&#xff09;☃️数据库操作☃️表操作☃️DDL的重要性 ☃️概述 MySQL 通用语法分类 ● DDL: 数据定义语言&#xff0c;用来 定义数据库对象&#xff08;数据库、表、字段&#xff09; ● DML: 数据操作语言&#xff0c;用…

云计算之CDN

目录 一.什么是CDN&#xff1f; 二.使用CDN的好处&#xff1a; 三.主要特点&#xff1a; 四.关键功能&#xff1a; 一.什么是CDN&#xff1f; 1.CDN的全称是Content Delivery Network&#xff0c;即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和…

常见的Wi-Fi蓝牙模组

在嵌入式领域&#xff0c;常见的Wi-Fi蓝牙模组确实包括多个知名品牌&#xff0c;如乐鑫、安信可和移远等&#xff0c;以前可能你听的最多的是ESP8266&#xff0c;不过今天讨论的是Wi-Fi蓝牙模组&#xff0c;而8266本身并不内置蓝牙功能&#xff0c;不在介绍范围。而拿到模块之后…

Android提供的LruCache类简介(1)

* If your cached values hold resources that need to be explicitly released, * override {link #entryRemoved}. * 如果你cache的某个值需要明确释放&#xff0c;重写entryRemoved() * If a cache miss should be computed on demand for the corresponding keys, * ov…

redis.conf 参数详解,方便进行性能优化配置

以下是redis.conf中一些常见参数的详细说明&#xff1a; daemonize&#xff1a;是否以后台进程运行&#xff0c;默认为no&#xff1b; pidfile&#xff1a;如以后台进程运行&#xff0c;则需指定一个pid&#xff0c;默认为/var/run/redis.pid&#xff1b;bind&#xff1a;绑定主…

【鸿蒙】创建第⼀个鸿蒙项⽬

点击 Create Project 配置项目 开发工具界面 工程介绍

RFID无线测温技术在医院电力系统中的应用

在医疗设施的日常运营中&#xff0c;确保电力系统的可靠性和安全性至关重要。特别是在医院环境中&#xff0c;对于供电的稳定与安全有着十分高的要求&#xff0c;面对持续增加的就医人数所带来的接诊压力及高精密设备所带来的电力运行负荷&#xff0c;这是对医疗机构的电力系统…

vue实现post请求接口流式输出数据sse

使用fetchEventSource 参考git源码&#xff1a;https://github.com/Azure/fetch-event-source/tree/main 本地联通 发现数据并没有流式输出&#xff1a;vue代理需要关闭compress 如下&#xff1a; devServer:{proxy:{},compress:false } 安装插件 npm install microsoft/f…