​1.git介绍

Git世界上目前最先进的分布式版本控制系统,一般开发者角度是
(1)从服务器上克隆数据库(包括代码和版本信息)到本地机器上。
(2)在本地机器上创建分支,修改代码。
(3)在本地机器上自己创建的分支上提交代码。
(4)在本地机器上合并分支。
(5)新建一个分支,把服务器上最新版的代码拉取(fetch)下来,然后跟自己的主分支合并。(6)生成补丁(patch),把补丁发送给主开发者。
(7)若有冲突,需解决冲突并再次提交。

2.git的基本原理:

在这里插入图片描述

3.git的安装配置

我们首先要下载Git,安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功。
然后进行注册在命令行窗口,输入以下内容,email一定是真实email
$ git config --global user.name Your Name
$ git config --global user.email email@example.com
注册完成后可以使用git config --list查看,如果注册不成功或错误再次重复输入即可。
​​​​​​在这里插入图片描述
在这里插入图片描述

创建版本库,首先使用mkdir命令创建一个文件夹,切换目录至创建文件夹下,然后使用git init命令将这个目录变成可以git可以管理的仓库。从文件夹中看就会发现多了一个.git文件,这个目录是Git来跟踪管理版本库的。
在这里插入图片描述在这里插入图片描述
初始化仓库后,输入git status命令,可以查看文件状态。可以看出仓库现在是空的。
在这里插入图片描述
新建一个test.txt文件,进行编辑后。
在这里插入图片描述
再次输入命令会发现仓库状态有所改变。
在这里插入图片描述
然后我们需要将文件提交至本地仓库如下图:
第一步,用命令git add filename(.是全部文件的意思)告诉git,把文件添加到暂存区
第二步,用命令git commit告诉git,把文件提交到本地仓库,-m后面输入的是本次提交的说明,可以输入任意内容。
在这里插入图片描述

再次输入命令会发现又回到了最初状态。这就说明我们成功将文件提交至本地仓库
在这里插入图片描述

文件状态(4种)

Untracked: 未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制.通过 git add状态变为 staged。
Unmodify:文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一致,这种类型的文件有两种去处,如果它被修改, 而变为Modified .如果使用 git rm 移出版本库,则成为 untracked 文件。
Modified: 文件已修改,仅仅是修改,并没有进行其他的操作,这个文件也有两个去处,通过git add 可进入暂存staged 状态,使用 git checkout 则丢弃修改过,返回到 unmodify 状态,这个git checkout 即从库中取出文件,覆盖当前修改!
staged:暂存状态.执行 git commit 则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为 unmodify 状态执行 git reset HEAD filename 取消暂存,文件状态为 Modified

4.git的常用的基本命令操作

git log命令是查看历史提交日志
在这里插入图片描述
git diff 查看修改内容
在这里插入图片描述
git reflog查看提交的历史记录
在这里插入图片描述
git branch 分支名称 ,新建一个分支但仍停留在当前分支
git checkout -b 分支名称 新建一个分支并切换到该分支
在这里插入图片描述
git branch列出所有本地分支
在这里插入图片描述
git branch -r列出所有远程分支
在这里插入图片描述

git merge 分支名称 合并指定分支到当前分支
在这里插入图片描述
git branch -a查看当前所有可以使用的分支
在这里插入图片描述
git branch -d 分支名称 删除分支
在这里插入图片描述
git push origin --delete 分支名称 删除远程分支
在这里插入图片描述
git reset 版本回退:git reset --hard commit id 回退到任何具有commit id的版本,commit_id 由git log 来查看(复制id前几位就可以)
在这里插入图片描述
撤销修改:(1)在没有git add提交至暂存区时,可以用$ git checkout – filename来撤销。
(2)已经git add到暂存区但还没有git commit 提交至本地仓库,可以用$ git reset HEAD filename命令可以把暂存区的修改撤销掉(unstage),重新放回工作区:然后再git checkout --filename来完成撤销。
(3)若已提交至本地仓库则可以使用git reset --hard commit_id 回退到任何具有commit_id的版本.
撤销删除:
(1)若是在电脑中删除的,使用git checkout – filename进行恢复,此时可以看到文件又恢复了,用git log可以看出现在head在新的文件上了
(2)若是使用命令git rm myfile.txt,然后git commit 进行删除,这样删除后用版本回退进行恢复(即:git reset --hard head^或git reset --hard commit_id(commit_id由git reflog得到)

5.远程仓库的引入

远程仓库找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交,这就是远程仓库。
我们完全可以自己搭建一台运行Git的服务器,当然也可以使用现成的网络服务器,如github(国外),gitEE(国内),只需注册账号,就可以免费获得Git远程仓库。
注册地址:https://gitee.com/
在这里插入图片描述
首先创建SSH KeyWindows下打开Git Bash,创建SSH Key:
$ ssh-keygen -t rsa -C
注册后,会生成一个SSH秘钥序列号文件:
/c/Users/Desktop/.ssh/id_rsa.pub
在这里插入图片描述

使用记事本打开刚才生成的序列号,将之复制到码云上。输入密码完成验证,查看SSH公钥发现已经添加好了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

远程仓库的创建

登录后在右上角找到“新建仓库” 按钮,创建一个新的仓库,在仓库名称填入gitExample,其他保持默认设置,可以选择开源或私有,不要选择“使用readme初始化这个库”,点击“创建”按钮,就成功地创建了一个新的Git仓库:
注意:仓库名可以与本地库名不同,但我们一般都用同一个名字
在这里插入图片描述
在这里插入图片描述
点击ssh可看到右侧链接地址的变化,这是码云远程库的ssh地址
在这里插入图片描述
复制网页中的ssh地址,然后在本地电脑用git bash 进入工作区目录输入git remote add origin 地址 (粘贴刚才自己的地址!)
远程添加一个origin库,并与本地相关联
在这里插入图片描述
查看本地库关联的远程库:git remote -v
如果不想要当前这个远程仓库,则可以先解除关联,再重新关联: git remote rm origin (解除)
git remote add origin 你的仓库地址 (重新关联)
在这里插入图片描述
首次推送信息到远程仓库:在本地电脑的工具区目录(git bash命令行)输入: git push -u origin master 在远程库origin下新建一个master分支,并把本地master分支内容推送到远程的master分支
(由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。)
在这里插入图片描述
再次推送信息到远程仓库:以后再次推送到远程用push即可不用添加-u参数,推送到远程前必须在本地git add 和git commit,否则是不行的。
在这里插入图片描述

6.从远程仓库克隆

首先要获得远程仓库的地址,即克隆地址。输入命令 git clone <你准备好的库地址>,克隆后能看到本地新的仓库有文件了

在这里插入图片描述

小结

1.git init 初始化一个仓库
2.git status 查看目前git状态
3.git add your file name 添加文件到暂存区
4.git commit –m “your own words” 提交到本地仓库
5.git reset 会改变提交历史,建议不要在公共分支使用,如果在公共分支撤销提交可以使用git revert,它会保留记录。
6.文件一旦修改必须通过git add 和 git commit -m 来添加到版本仓库
7.可以使用git reset --hard head^返回到最近版本
8.可以使用git log 查看版本号
9.可以使用git reset --hard commit id 回退到任何具有commit id的版本,commit id 由it log 来查看
10.git reflog查看所有操作过程
11.远程仓库建立(1)首先注册一个码云账号(2)把本机ssh公钥复制到码云ssh公钥
(3)码云上新建一个远程库(4)本地用git remote add origin <ssh_address> 添加本地库与远程库的关联(5)本地git push -u origin master 推送本地到远程(6)再次推送git push 关联是主要的不关联无法推送
12.克隆远程库,在本地运行:git clone 远程库地址
13.新建dev分支:git checkout -b dev
14.分支切换:git checkout <your_branch_name>
15.查看分支:git branch
16.合并分支:git merge
17.删除分支:git branch -d

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐