您的位置:首页 > 房产 > 建筑 > 大数据培训多少钱_东莞网站开发哪里找_网站建设黄页免费观看_百度一下你就知道百度首页

大数据培训多少钱_东莞网站开发哪里找_网站建设黄页免费观看_百度一下你就知道百度首页

2024/12/26 20:26:05 来源:https://blog.csdn.net/new_light123/article/details/140737731  浏览:    关键词:大数据培训多少钱_东莞网站开发哪里找_网站建设黄页免费观看_百度一下你就知道百度首页
大数据培训多少钱_东莞网站开发哪里找_网站建设黄页免费观看_百度一下你就知道百度首页

1. git安装

git下载

有Linux,Mac,Windows三种版本用于下载
在这里插入图片描述

我们这里以Windows为例

1.1 安装exe

在这里插入图片描述
安装目录最好别有中文

建议选择vim编辑器
在这里插入图片描述

后面直接无脑点next即可

1.2 检验安装是否完备

安装完毕之后,目前比较新的版本的git都会自动将git的环境变量添加好

我们Win+r启动cmd(最好用管理员打开)
在这里插入图片描述
输入sh,回车
在这里插入图片描述
在这里插入图片描述
说明安装成功!

如果出现sh不是内部命令之类的,就需要我们手动给git配置环境变量

在这里插入图片描述
变量值为git安装目录(bin目录的上一级)

然后编辑Path系统变量,添加%GIT_HOME%\bin
在这里插入图片描述
最后保存退出即可

2. git日常使用(最基础和最频繁的操作)

在命令行输入sh和右键git bash here的区别在于,有一些命令属于linux,sh毕竟是windows的命令行,是无法使用的

在一个全英文的目录下新建文件夹:myFIrstGit

在这里插入图片描述

2.1 第一种git命令行:右键git bash here

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

这里可以使用ll -a这个Linux系统的命令,展示当前文件夹的所有内容

在这里插入图片描述
也可以使用windows的

2.2 第二种git命令行:路径中输入sh

在这里插入图片描述
在这里输入sh,回车
在这里插入图片描述
两个界面几乎完全一致,但是这里无法使用ll -a
在这里插入图片描述

2.3 初始化(创建版本库)

git init
作用:将所在文件夹初始化为git本地仓库;之后将会生成.git文件夹,其中包含了本地仓库添加提交推送记录,本地仓库的用户名和邮箱,分支详情等信息

在这里插入图片描述
在这里插入图片描述
我们查看.git文件夹的内容,包含这些内容
在这里插入图片描述
其中config文件是用来存放本仓库的配置的
在这里插入图片描述

包含远程仓库的地址,本地仓库的用户名,邮箱等信息

COMMIT_EDITMSG保存了提交时附带的备注信息
在这里插入图片描述

2.4 添加文件+修改文件(基于Linux命令)

vi 文件名.拓展名
在这里插入图片描述

在这里插入图片描述
第一次进入默认阅读模式,点击i切换为编辑模式

在这里插入图片描述
在这里插入图片描述
esc退出编辑模式,然后输入:wq保存并退出
在这里插入图片描述
保存退出之后默认回到命令行界面
在这里插入图片描述

2.5 添加+提交修改的变动到本地仓库

2.5.1 添加文件到暂存区

git add .或者git add firstGit.txt

前者是添加当前所有文件到暂存区;后者是只添加指定的文件到暂存区

在这里插入图片描述

2.5.2 提交变动至本地仓库

使用git status查看当前目录的文件变动状态
在这里插入图片描述
我们可以发现新建了一个文件,并且已经被添加到了暂存区

随后使用git commit -m "提交的备注"将暂存区中的文件提交到本地仓库

在这里插入图片描述

2.6 将提交到本地仓库的变动推送到远程仓库

推送之前需要先连接,连接分为两种方式:https模式和ssh模式;
两者具体的过程大致相同,区别在于https需要验证一次账号密码,ssh则是需要保存ssh秘钥

2.6.1 创建github远端仓库和gitee远端仓库

首先创建github的仓库git_test
在这里插入图片描述

创建好之后是这样
在这里插入图片描述

然后创建gitee的仓库
在这里插入图片描述

2.6.2 与远端仓库建立连接

2.6.2.1 https方式建立连接
  1. 复制仓库的https的clone的联接
    在这里插入图片描述

  2. 回到本地的git命令行,添加本地remote,命名为origin

A

使用git remote 查看本地所有的rermote(远端仓库地址)
在这里插入图片描述
3. 添加本仓库的user.mail以及user.name

git config --local user.name 'username'
git config --local user.mail 'mail'
  1. 推送到远端仓库
 git push -u origin master # 这里的-u是--set-upstream的简称,--set-upstream用于设置上游分支(将本地仓库的分支与远端仓库的分支建立固定的联系,只有第一次需要这么做,后续推送代码可以直接git push)git push # 本地分支和远端分支建立联系之后可以省略多余参数

然后就会弹出输入账号密码的会话框

在这里插入图片描述
授权一次即可永久使用(创建了windows凭据)

随后代码即可正常推送到远端仓库

在这里插入图片描述

ssh秘钥的方式稍微复杂一点

2.6.2.2 ssh方式建立连接

在 Windows 的 GitBash 或 Linux 终端输入:

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

此命令将提示您用于存储密钥对和密码的位置和文件名。当提示输入位置和文件名时,只需按Enter键即可使用默认值。

或者直接

ssh-keygen

你可以把引号里的替换为你自己的邮箱

然后终端会让你输入一些东西,可以不用输入直接一路回车,看到一个像雪花一样的图案之后就说明成功了

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:t3925EJgD4kcUp69dBv/nqkM85n0I5mFRW4BlZwaVeo your_email@example.com
The key's randomart image is:
+---[RSA 4096]----+
|             .=o=|
|          .  . B |
|         o +  * .|
|        . * =oo+ |
|        So.B +A+ |
|         .o.B.o.o|
|          .o o+o.|
|           .*+B.*|
|            .OoBo|
+----[SHA256]-----+

linux:cat .ssh/id_rsa.pub 查看公钥
windows:在C盘下 .ssh 文件夹中会生成 id_rsa 和 id_rsa.pub 两个文件, id_rsa.pub是公钥文件

打开公钥文件并复制到github或者gitee的ssh秘钥配置中

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

2.6.2.3 测试ssh连接
ssh -T git@github.com

或者

在这里插入代码片

然后会提示测试连接成功
在这里插入图片描述
在这里插入图片描述

随后我们就可以在clone代码的时候选择ssh方式clone

在这里插入图片描述

并且第一次push代码时也不需要输入账号密码进行验证

2.6.3 推送代码

之前我们已经将变动提交到暂存区了,当我们将远端仓库和本地仓库建立连接之后,就可以推送代码了

git push origin master

在这里插入图片描述

3. 其他重要命令

3.1 查看提交记录历史

git log

在这里插入图片描述

回车可以向下继续查看,包含了项目的所有提交记录

:wq 保存退出

3.2 版本回退&&版本回退

git reset --hard HEAD^ # 退回上一个版本
git reset --hard HEAD~100 # 退回上100个版本# 通过sha1的前四位退回到指定版本
git reset --hard xxxx

在这里插入图片描述
但是如果我又不想退回这个版本了,我想撤销回退,应该怎么做

git reflog # 查看所有历史版本

在这里插入图片描述
然后就又可以切回最新的版本

3.3 查看&修改配置信息

git config --local -l # 查看本地仓库级别配置
git config --global -l# 查看用户级别仓库配置
git config --system -l# 查看系统级别仓库配置

优先级:仓库级别 > 用户级别 > 系统级别

git 仓库级别对应的配置文件是当前仓库下的.git/config
git 用户级别对应的配置文件是用户宿主目录下的~/.gitconfig
git系统级别对应的配置文件是git安装目录下的 /etc/gitconfig

修改配置:

git config --级别 user.name ""
git config --级别 user.email ""

级别可以是:local,global,system

3.4 .gitignore自动忽略添加文件

所谓的 glob 模式是指 shell 所使用的简化了的正则表达式,匹配规则如下:

  1. “*”:星号匹配零个或多个任意字符
  2. []:匹配任何一个列在方括号中的字符,如[ab]匹配a或者匹配b
  3. “?”:问号匹配一个任意字符
  4. [n-m]:匹配所有在这两个字符范围内的字符,如[0-9]表示匹配所有0到9的数字

匹配示例
logs/: 忽略当前路径下的logs目录,包含logs下的所有子目录和文件
/logs.txt: 忽略根目录下的logs.txt文件
*.class: 忽略所有后缀为.class的文件
!/classes/a.class:不忽略classes目录下的a.class文件
tmp/*.txt: 只忽略tmp目录下的.txt文件
**/foo: 可以忽略/foo, a/foo, a/b/foo等

3.5 创建分支/切换分支/查看分支/删除分支

3.5.1 默认分支master并不是git init之后自动创建

当我们初始化仓库之后,本地仓库默认没有分支

HEAD是指向当前的分支,当前在哪个分支就指向哪个分支

分支指针指向提交

所以没有提交,也就没有分支,HEAD指针没地方指!

在这里插入图片描述

因为git仓库的HEAD指针要指向某一个提交分支的commit版本(默认该分支的最新提交版本),

所以只有提交了代码,才能真正创建默认的master分支

在这里插入图片描述
结果为空

当我们首次提交了代码之后
在这里插入图片描述
在这里插入图片描述
我们再查看分支,出现了master分支!
在这里插入图片描述

3.5.2 创建分支/切换分支/查看分支

切换分支需要先提交变动,或者暂存变动,才可以切换分支

git branch devlop # 创建本地分支devlop
git switch devlop # 切换到devlop分支上
git checkout -b devlop # 先创建,然后切换到devlop分支上
git branch # 查看自己所在的分支git beanch -av # 查看本地和远程的所有分支,并且显示每个分支最新提交的备注
git remote # 查看当前本地分支推送对应的远端分支是哪个

3.5.3 删除分支

  1. 不能删除自己所在的分支
  2. 如果一个分支发生了变化不能删除
git branch -d devlop

3.6 分支合并

git pull = git fetch +git merge

合并到A分支,就再A分支上运行:

git merge B

3.6 暂存变动

我们发现会提示错误,git建议我们先提交或者stash修改的内容再切换
我们执行git stash
会先把修改的内容做保存然后我们就可以切换到其他的分支

我们再切回master分支执行,我们能看到上次保存的操作
git stash list
在这里插入图片描述

我们可以将stash过的修改恢复出来。通过pop取出最近的恢复并且删除stash中的修改
git stash pop
在这里插入图片描述

如果两次pop由于提一次没有做提交则会报错,所以我们应该把第一次pop的提交,再pop第二次暂存代码继续开发

3.7 删除远程分支

git push origin --delete feature

4. git流程示意图(包含内存结构图)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

注意:随着Git 2.23版本的发布,checkout的功能被拆分成了两个新的命令:switch和restore。
git switch:专门用于切换分支和创建新分支。它简化了分支管理的流程,使得用户更容易理解。
git restore:用于恢复工作目录和暂存区的文件,但不涉及分支的切换。
这一变化反映了Git社区对命令清晰性和易用性的追求。尽管checkout命令仍然可用(出于向后兼容的考虑),但推荐使用新的switch和restore命令。

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com