Git的安装与使用

news2024/9/29 4:59:04

目录

一、简介

1. Git 是什么?

2. 集中式和分布式

二、Git 环境搭建

1. Linux 下安装

2. Windows 下安装

 三、创建版本库

 四、把文件添加到版本库

1. 添加并提交

2. 仓库状态

 3. 版本回退

(1)查看提交日志

(2)版本回退/前进

(3)工作区和暂存区

4. 撤销修改

5. 删除文件

五、远程仓库

六、 分支管理

1. 创建与合并分支

2. 解决冲突

七、标签管理

1. 创建标签

2. 操作标签

小结


一、简介

1. Git 是什么?

Git 是目前世界上最先进的分布式版本控制系统。

2. 集中式和分布式

        集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。

        分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件 A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

        和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了。

二、Git 环境搭建

1. Linux 下安装

(1)下载地址:Index of /pub/software/scm/git/ (kernel.org)

 下载当前最新的版本:git-2.9.5.tar.gz

(2)上传至服务器:

 (3)提前安装依赖

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc-c++ perl-ExtUtils-MakeMaker

 (4)解压并安装

tar -zxvf git-2.9.5.tar.gz
cd git-2.9.5
make configure
./configure --prefix=/usr/local/git
make profix=/usr/local/git
make install 

(5)将 Git 加入环境变量

vim /etc/profile
#在文件底部加入
export GIT_HOME=/usr/local/git
export PATH=$PATH:$GIT_HOME/bin

source /etc/profile

 (6)查看安装结果

[root@zy-host git-2.9.5]# git --version

2. Windows 下安装

下载地址:Git - Downloading Package (git-scm.com)

下载完成后按默认选项安装即可,安装好后,右键可以看到git命令:

 

 三、创建版本库

        版本库也就是仓库(repository),可以理解成他是一个目录,目录中所有的文件都可以被git管理起来,每个文件的修改、删除,git都可以跟踪。

(1)创建一个文件夹,名字自定义:

 (2)通过 git init 命令把这个目录编程 git 课管理的仓库

$ git init
Initialized empty Git repository in D:/Java_Dev/IDEA_Projects/code-repository/git-learn/.git/

 这样仓库就建好了,在目录下会多出一个 .git 的文件(默认是隐藏文件)

 四、把文件添加到版本库

1. 添加并提交

注意:所有的版本控制系统,只能跟踪文本文件的改动。对于图片或视频这些二进制文件,版本控制系统只能知道大小发生变化,但是里面改了什么,版本控制系统不知道。

(1)在仓库中新建一个 readme.txt文件,内容如下:

 (2)打开git命令行窗口

git add 添加命令,如果要添加全部,可以使用 git add .

git commit 命令, -m 后面输入的是本次提交的说明

$ git add readme.txt                   #将文件添加到仓库
$ git commit -m "提交了一个新文件!"     #将文件提交到仓库
[master (root-commit) e038a32] 提交了一个新文件!
 1 file changed, 2 insertions(+)
 create mode 100644 readme.txt

2. 仓库状态

刚才已经把readme.txt文件提交到了版本库中,现在对文件进行修改,添加一行:

运行 git status 命令看看结果:

可以看到提示 readme 已经被修改了,但是还没有提交修改。

使用git diff 查看文件变化,git diff 顾名思义就是查看 difference 

再次提交到仓库中:

zhangyin@LAPTOP-NQ7TQU22 MINGW64 /d/Java_Dev/IDEA_Projects/code-repository/git-learn (master)
$ git add readme.txt    #添加到仓库

zhangyin@LAPTOP-NQ7TQU22 MINGW64 /d/Java_Dev/IDEA_Projects/code-repository/git-learn (master)
$ git status            #查看仓库当前状态,可以看到readme.txt将被提交
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   readme.txt


zhangyin@LAPTOP-NQ7TQU22 MINGW64 /d/Java_Dev/IDEA_Projects/code-repository/git-learn (master)
$ git commit -m "第二次提交!"    #提交到仓库
[master 0246a95] 第二次提交!
 1 file changed, 2 insertions(+), 1 deletion(-)

zhangyin@LAPTOP-NQ7TQU22 MINGW64 /d/Java_Dev/IDEA_Projects/code-repository/git-learn (master)
$ git status            #再次查看仓库的状态
On branch master
nothing to commit, working tree clean
#当前没有需要提交的修改,而且,工作目录是干净的

 3. 版本回退

(1)查看提交日志

使用 git log 查看提交日志:

$ git log
commit 035cf6ad5e341bba4c0d409775bc5a3bdbfa760d (HEAD -> master)
Author: zhangyin_0116 <1171900089@qq.com>
Date:   Thu Jan 19 14:01:27 2023 +0800

    第三次修改提交!

commit 0246a95af8837f1ba379f87f60a013d9b4a61fa2
Author: zhangyin_0116 <1171900089@qq.com>
Date:   Thu Jan 19 13:47:20 2023 +0800

    第二次提交!

commit e038a323fc72804c34cdb7e770dda22b84df80b0
Author: zhangyin_0116 <1171900089@qq.com>
Date:   Thu Jan 19 09:56:13 2023 +0800

    提交了一个新文件!

查看精简日志:前面是 commit id(版本号)

$  git log --pretty=oneline
035cf6ad5e341bba4c0d409775bc5a3bdbfa760d (HEAD -> master) 第三次修改提交!
0246a95af8837f1ba379f87f60a013d9b4a61fa2 第二次提交!
e038a323fc72804c34cdb7e770dda22b84df80b0 提交了一个新文件!

(2)版本回退/前进

        首先,Git 必须知道当前版本是哪个版本,在 Git 中,用 HEAD 表示当前版本,也就是最新的,上一个版本就是 HEAD^ ,上上一个版本就是 HEAD^^ ,当然 往上 100 个版本写 100 个 ^ 比较容易数不过来,所以写成 HEAD~100。

现在回退到上一个版本,先看一下当前版本文件内容:

$  git reset --hard HEAD^
HEAD is now at 0246a95 第二次提交!

 现在版本已经回到上一个了,查看一下文件的内容,可以看到最后一行不在了:

 使用 git log 查看:

$ git log
commit 0246a95af8837f1ba379f87f60a013d9b4a61fa2 (HEAD -> master)
Author: zhangyin_0116 <1171900089@qq.com>
Date:   Thu Jan 19 13:47:20 2023 +0800

    第二次提交!

commit e038a323fc72804c34cdb7e770dda22b84df80b0
Author: zhangyin_0116 <1171900089@qq.com>
Date:   Thu Jan 19 09:56:13 2023 +0800

    提交了一个新文件!

再次回到第三次提交的状态,需要知道版本号:

$  git reset --hard 035cf6ad5e341bba4c0d409775bc5a3bdbfa760d  #版本号可以不用写全
HEAD is now at 035cf6a 第三次修改提交!

现在再查看文件,可以看到最后一行又加上了:

 如果忘记版本号,可以使用 git reflog 来查看命令历史,以及每次提交后的 commit id(版本号):

$ git reflog
035cf6a (HEAD -> master) HEAD@{0}: reset: moving to 035cf6ad5e341bba4c0d409775bc5a3bdbfa760d
0246a95 HEAD@{1}: reset: moving to HEAD^
035cf6a (HEAD -> master) HEAD@{2}: commit: 第三次修改提交!
0246a95 HEAD@{3}: commit: 第二次提交!
e038a32 HEAD@{4}: commit (initial): 提交了一个新文件!

(3)工作区和暂存区

工作区:就是在电脑里能看到的目录。

版本库:工作区有一个隐藏目录 .git ,这个不算工作区,而是 Git 的版本库。 Git 的版本库里存了很多东西,其中最重要的就是称为 stage(或者叫 index)的暂存区,还有 Git 为我们自动创 建的第一个分支 master,以及指向 master 的一个指针叫 HEAD。

前面讲了我们把文件往 Git 版本库里添加的时候,是分两步执行的:

第一步是用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区

第二步是用 git commit 提交更改,实际上就是把暂存区的所有内容提交到当前分支

因为我们创建 Git 版本库时,Git 自动为我们创建了唯一一个 master 分支,所以,现在, git commit 就是往 m aster 分支上提交更改。

4. 撤销修改

命令 git checkout -- readme.txt 意思就是,把 readme.txt 文件在工作区的修改全部撤销,这里有两种情况:

  •  一种是 readme.txt 自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
  • 一种是 readme.txt 已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

第一种情况演示:

(1)在文件中添加一行:

(2)在没有 git add 之前,使用git check -- file,文件就会把修改撤销:

#查看状态,可以看到文件被修改的提示
$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   readme.txt

no changes added to commit (use "git add" and/or "git commit -a")

#撤销修改
$ git checkout -- readme.txt

#撤销修改之后,再次查看状态,可以看到文件恢复到了修改前状态
$ git status
On branch master
nothing to commit, working tree clean

文件恢复到了修改前状态:

第二种情况演示:

(1)文件中添加一行

 (2)使用git add 将修改添加到暂存区

$ git add readme.txt

 (3)再次修改,再添加一行

 (4)执行 git checkout -- readme.txt

$ git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   readme.txt

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   readme.txt

$ git checkout -- readme.txt

$ git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   readme.txt

 可以看到,文件恢复到了添加到暂存区之后的状态,也就是说,把添加到暂存区之后再进行的修改都撤销了

考虑:如果我们修改了之后,还把它用 git add 添加到了暂存区,现在又后悔了?怎么把暂存区的修改也撤销呢?

演示:

(1)在文件中添加一行

 (2)添加到暂存区

$ git add readme.txt

(3)查看状态

$ git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   readme.txt

(4)撤销修改

git reset HEAD file 可以把暂存区的修改撤销掉(unstage),重新放回工作区(相当于从暂存区移出去

$  git reset HEAD readme.txt
Unstaged changes after reset:
M       readme.txt

这里也可以使用:$ git restore --staged readme.txt 和 git reset HEAD readme.txt 作用一样。

再执行 git checkout -- readme.txt,将文件恢复到修改前状态:

$ git checkout -- readme.txt

5. 删除文件

新建一个test.txt 文件,添加并提交到仓库

$ git add test.txt
$ git commit -m "add test.txt"

 删除 test.txt 文件,使用 git status 查看状态:

现在有两个选择,一是确定要从版本库中删除该文件,那就用命令 git rm 删掉,并且 git commit 

$ git rm test.txt
$ git commit -m "remove test.txt"

另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:

$ git checkout -- test.txt

git checkout 其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”

五、远程仓库

添加远程仓库可以看我这篇博客:使用码云Gitee创建代码仓库并提交代码

要关联一个远程库,使用命令 git remote add origin git@server-name:path/repo-name.git

关联后,使用命令 git push -u origin master 第一次推送 master 分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令 git push origin master 推送最新修改; 

 (1)在码云上新建一个 git-learn 仓库

创建完之后,码云也会给出如下提示:

(2)把本地代码推送到远程仓库

 (3)查看远程仓库

可以看到文件都已经推送到远程仓库。

六、 分支管理

1. 创建与合并分支

        在版本回退里,每次提交,Git 都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在 Git 里,这个分支叫主分支,即 master 分支。HEAD 严格来说不是指向提交,而是指向 master,master 才是指向提交的,所以,HEAD指向的就是当前分支。

        一开始的时候,master 分支是一条线,Git 用 master 指向最新的提交,再用 HEAD 指向 master,就能确定当前分支,以及当前分支的提交点:

        当我们创建新的分支,例如 dev 时,Git 新建了一个指针叫 dev,指向 master 相同的提交,再把 HEAD 指向 dev,就表示当前分支在 dev 上: 

        不过,从现在开始,对工作区的修改和提交就是针对 dev 分支了,比如新提交一次后,dev 指针往前移动一 步,而 master 指针不变:

        假如我们在 dev 上的工作完成了,就可以把 dev 合并到 master 上。Git 怎么合并呢?最简单的方法,就是直接 把 master 指向 dev 的当前提交,就完成了合并:

 

        合并完分支后,甚至可以删除 dev 分支。删除 dev 分支就是把 dev 指针给删掉,删掉后,我们就剩下了一条 master 分支:

 实战:

(1)首先,我们创建 dev 分支,然后切换到 dev 分支:

$ git checkout -b dev

git checkout 命令加上 -b 参数表示创建并切换,相当于以下两条命令:

$ git branch dev
$ git checkout dev

(2)用 git branch 命令查看当前分支:

 (3)在dev分支上做修改,添加一行:

 (4)切换回 master 分支

可以看到刚才添加的那句话在主分支上看不到了:

git checkout master

 

(5)们把 dev 分支的工作成果合并到 master 分支上

git merge 命令用于合并指定分支到当前分支

$ git merge dev

 (6)合并完成后,就可以放心地删除 dev 分支了

 小结:

查看分支:git branch

创建分支:git branch

切换分支:git checkout

创建+切换分支:git checkout -b

合并某分支到当前分支:git merge

删除分支:git branch -d

2. 解决冲突

 准备新的分支branch01,在新的分支上开发:

$ git checkout -b branch01
Switched to a new branch 'branch01'

修改 readme.txt 最后一行,

 在 branch01 分支上提交:

$ git add readme.txt
$ git commit -m "branch01分支上提交!"

切换到主分支:

$ git checkout master

再修改 readme.txt 文件,添加这句:

 在主分支上提交:

$ git add readme.txt
$ git commit -m "主分支上提交!"

现在,master 分支和 branch01 分支各自都分别有新的提交,变成了这样:

这种情况下,git无法执行快速合并,只能试图把各自的修改合并起来,但这种合并就可能会有冲突,我们试试看:可以看到产生了冲突

 查看状态:

查看 readme.txt 文件的内容:

 再次提交

$ git add readme.txt
$ git commit -m "解决冲突!"

 现在,master 分支和 branch01 分支变成下图所示:

用带参数的 git log 也可以看到分支的合并情况:

 最后删除 branch01分支:

七、标签管理

1. 创建标签

        发布一个版本时,我们通常先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

创建标签过程:

(1)切换到打标签的分支上

$ git checkout master

(2)打标签  默认标签是打在最新提交的 commit 上的

$ git tag v1.0

(3)查看所有标签

$ git tag
v1.0

有时候,如果忘了打标签,比如,现在已经是周五了,但应该在周一 打的标签没有打,怎么办?

方法是找到历史提交的 commit id ,然后打上就可以了:

$  git log --pretty=oneline --abbrev-commit
4cb0cf3 (HEAD -> master, tag: v1.0) 解决冲突!
59ce512 主分支上提交!
77e523b feature1提交!
5ef1329 解决冲突!
966ec25 主分支上提交!
088aa6f branch01分支上提交!
a89eb37 branch test
ab84ebe (origin/master) 提交test.txt
a4f2ab7 remove test.txt
a7a41ed add test.txt
b86291b git checkout 测试后提交
035cf6a 第三次修改提交!
0246a95 第二次提交!
e038a32 提交了一个新文件!

 在第一次提交的时候补打标签:

$ git tag v0.1 e038a32

2. 操作标签

如果标签打错了,也可以删除:

$ git tag -d v0.1
Deleted tag 'v0.1' (was e038a32)

如果要推送某个标签到远程,使用命令 git push origin

$ git push origin v1.0

或者,一次性推送全部尚未推送到远程的本地标签:

$ git push origin --tags

如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除

$ git tag -d v0.9

 然后,从远程删除。删除命令也是 push,但是格式如下:

$ git push origin :refs/tags/v0.9

小结

  • 命令 git push origin 可以推送一个本地标签;
  • 命令 git push origin --tags 可以推送全部未推送过的本地标签;
  • 命令 git tag -d 可以删除一个本地标签;
  • 命令 git push origin :refs/tags/ 可以删除一个远程标签。

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

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

相关文章

量化交易-因子有效性分析

量化交易-因子有效性分析一、 因子的 IC 分析2. 信息系数3. 举例4. 因子处理4.1 去极值4.2 标准化4.3 市值中性化一、 因子的 IC 分析 判断因子与收益的相关性强度 分析结果 因子平均收益IC meanIC stdIC > 0.02&#xff1a;IC大约0.02的比例&#xff0c;越大越严格IR&…

leetcode刷题记录总结-1. 数组

文章目录一、二分查找[704. 二分查找](https://leetcode.cn/problems/binary-search/)题解小结[35. 搜索插入位置](https://leetcode.cn/problems/search-insert-position/)题解1&#xff1a;暴力解法题解2&#xff1a;二分法[34. 在排序数组中查找元素的第一个和最后一个位置]…

Day865.基础架构 -MySQL实战

基础架构&#xff1a;一条SQL查询语句是如何执行的 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的关于基础架构&#xff1a;一条SQL查询语句是如何执行的的内容。 经常说&#xff0c;看一个事儿千万不要直接陷入细节里&#xff0c;应该先鸟瞰其全貌&#xff0c;这样能够…

01-使用Camera Raw滤镜调色

1.需求展示 点击下载图片素材 原图 调色后, 具有电影感 2.操作步骤 1.打开原图 1.我使用的是ps2018, 打开原图, 图层名字可以自定义 2.拷贝底片建立一个新图层 养成好习惯, 每种操作都建立新图层来进行, 这样如果修坏了, 直接把该图层删除就行了, 还原图片比较快捷 3…

[QMT]03-让QMT支持从Tushare获取数据

QMT安装python第三方库为了兼容性&#xff0c;需要本地使用python3.6.8版本&#xff0c;因为刚刚下载的QMT python版本就是3.6.8.如果你本地有其他python版本的话&#xff0c;建议使用虚拟环境操作。这样不会影响你原有的python版本以及已经安装的第三方库。因为一机装多版本的…

Java设计模式-中介模式/中介模式具体怎么使用,使用场景又是什么

继续整理记录这段时间来的收获&#xff0c;详细代码可在我的Gitee仓库SpringBoot克隆下载学习使用&#xff01; 6.8 中介者模式 6.8.1 定义 调停模式&#xff0c;定义一个中介角色来封装一系列对象的之间交互&#xff0c;使元有对象之间的耦合松散&#xff0c;且可以独立改变…

2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特效

2023年春节祝福第二弹 送你一只守护兔&#xff0c;让它温暖每一个你&#xff01; 【html5 css3】画一只会动的兔子 目录 一、送你一只守护兔&#xff0c;效果图 二、前言 三、代码解释及部分特效教程 &#xff08;1&#xff09;、css3 立体字 &#xff08;2&#xff09;…

普中科技MicroPython基于esp32的基础教程-01

课程链接 3.5-Python基础--代码注释_哔哩哔哩_bilibili 学习目的 复习和加深对Python的学习和使用&#xff0c;将Python的使用融汇于硬件使用中。因此笔记记录的内容都是我之前遗忘的或者重要的知识点&#xff0c;选择性记录视频笔记&#xff0c;在开发的过程中对于遗忘的知识…

基于Power BI的终端产品销售ABC分析

一、原理 ABC分析&#xff0c;是由帕累托法则演化而来&#xff0c;一般认为A类产品带来70%的收入&#xff0c;B类产品带来20%的收入&#xff0c;C类产品带来10%的收入&#xff0c;所以ABC分析又称70/20/10分析。 二、数据源 某终端《8~10月商品月台帐》 问题&#xff1a; 1…

计算机网络——UDP与TCP

一、运输层的作用 运输层在整个网络体系结构中位于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层。它提供的是应用进程间的逻辑通信。所谓逻辑通信&#xff0c;指的是它屏蔽了下层网络的细节&#xff0c;使得进程看见的就是好像在两个运输层实体之间有一条端到…

二分、复杂度、动态数组、哈希表

1.二分法 不一定一定有序&#xff0c;比如找局部最小值就可以不有序 有序数组中找到num 用对数器生成随机数组来校验find()方法是否正确 public class Code01_BSExist {//有序数组中找到num//arr保证有序public static boolean find(int[] arr, int num) {if (arr null || …

1594_AURIX_TC275_PMU_应用提示1

全部学习汇总&#xff1a; GreyZhang/g_TC275: happy hacking for TC275! (github.com) 这一页主要是描述了当前的PMU版本与之前就版本相比之下的变更&#xff0c;对于第一次接触了解这个模块来说&#xff0c;其实了解前面的基本特性就好了。而这个差异&#xff0c;没有细看的必…

2023年网络安全比赛--Linux渗透测试中职组(超详细)

一、竞赛时间 180分钟 共计3小时 二、竞赛阶段 1.通过本地PC中渗透测试平台Kali对靶机场景进行系统服务及版本扫描渗透测试,并将该操作显示结果中Apache服务对应的版本信息字符串作为Flag值提交; 2.通过本地PC中渗透测试平台Kali对靶机场景进行渗透测试,将该场景/var/www/ht…

Ubuntu安装Redis最新版本

使用ubuntu自带的安装工具安装的redis并不是最新版本,在最近的项目中需要最新版本的redis所以需要手动安装,再次记录下安装过程 备份数据 首先如果当前的虚拟机已经安装过redis,那么卸载当前的安装的版本,同时注意备份数据,redis 的备份数据的默认路径如下: /var/lib/redis 具…

FFmpeg 将多张图片编码成视频

前言 本篇文章的需求是将相机获取到的图片进行编码&#xff0c;编码成一个视频&#xff0c;耗费了大约一个星期的时间在解决各种问题。这里阐述一下这篇文章所要解决的几个问题&#xff1a; 1、如何将多张图片编码成视频。 2、如何进行定时录制视频。 3、同时开启多线程进行视…

吴恩达机器学习课程笔记:正规方程法

1.吴恩达机器学习课程笔记&#xff1a;正规方程法 笔记来源&#xff1a; 1.吴恩达机器学习课程笔记&#xff1a;正规方程法 2.神经网络 - 多元线性回归 - 正规方程法 仅作为个人学习笔记&#xff0c;若各位大佬发现错误请指正 正规方程法区别于梯度下降法的迭代求解&#xff0…

基于 SSH 协议配置 Git 连接 GitHub

文章目录0.安装 Git1.注册 GitHub 账号2.配置 Git 的用户名和邮箱3.基于 SSH 协议远程连接 GitHub3.1 为本机生成 SSH 密钥对3.2 将公钥拷贝到 GitHub 上3.3 SSH 测试3.4 将文件上传到 GitHub 的远程仓库0.安装 Git Git 官网链接&#xff1a;https://git-scm.com/ Git 官网下…

[QMT]01-我的第一个Python策略

新年立个Flag 学写50个QMT策略:新建一个 Python 策略创建方法&#xff1a;我的主页-新建策略删掉模板带的内容,输入第一个策略 01-HelloWorld:编写 Python 策略需在开始时定义编码格式&#xff0c;如 gbk。Init 方法和 handlebar 方法的定义是必须的。上图展示了如何在 QMT 系统…

微信小程序---分包

1.什么是分包 分包指的是把一个完整的小程序项目&#xff0c;按照需求划分为不同的子包&#xff0c;在构建时打包成不同的分包&#xff0c;用户在使用时按需进行加载。 2.分包的好处 对小程序进行分包的好处主要有以下两点: 可以优化小程序首次启动的下载时间在多团队共同开…

Git使用详解(图文+代码):Git分支

Git分支不过如此前言什么是分支分支的新建与合并分支的新建与切换分支的合并遇到冲突时的分支合并分支的管理先写到这了&#xff0c;肝不动了。这几天每天都抽时间更新一点前言 每一种版本控制都以某种形式支持分支。 使用分支的好处就是你可以从开发主线上分离开来&#xff0…