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

一个大佬做的本子网站自己做网站卖别人的机械设备

一个大佬做的本子网站,自己做网站卖别人的机械设备,北京公司摇号中签率,wordpress 获取ip文章目录 安装Git创建版本库版本回退工作区和暂存区管理修改撤销修改 安装Git 在Windows上安装Git 在Windows上使用Git,可以从Git官网直接下载安装程序,然后按默认选项安装即可。 安装完成后,在开始菜单里找到“Git”->“Git Bash”&…

文章目录

  • 安装Git
  • 创建版本库
  • 版本回退
  • 工作区和暂存区
  • 管理修改
  • 撤销修改

安装Git

在Windows上安装Git
在Windows上使用Git,可以从Git官网直接下载安装程序,然后按默认选项安装即可。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!
在这里插入图片描述
安装完成后,还需要最后一步设置,在命令行输入:

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

可以再输入$ git config user.name然后回车,如果设置成功了就会显示你刚刚设置的用户名,同理,可以用$ git config user.email来查看你设置的邮箱

创建版本库

版本库又名仓库,可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。

首先,选择一个合适的地方,创建一个空目录:

$ mkdir learngit
$ cd learngit
$ pwd

在这里插入图片描述第二步,通过git init命令把这个目录变成Git可以管理的仓库:

$ git init

在这里插入图片描述
当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。(如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见)

把文件添加到版本库
windows注意
千万不要使用Windows自带的记事本编辑任何文本文件。原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0xefbbbf(十六进制)的字符,你会遇到很多不可思议的问题,比如,网页第一行可能会显示一个“?”,明明正确的程序一编译就报语法错误,等等,都是由记事本的弱智行为带来的。

现在我们编写一个HelloWorld.txt文件,内容如下:Hello World
一定要放到learngit目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。

第一步,用命令git add告诉Git,把文件添加到仓库:

$ git add HelloWorld.txt

在这里插入图片描述

第二步,用命令git commit告诉Git,把文件提交到仓库:

$ git commit -m "this is a .txt file"

-m后面输入的是本次提交的说明
在这里插入图片描述
执行成功后,1 file changed:1个文件被改动(我们新添加的HelloWorld.txt文件);1 insertions:插入了1行内容(HelloWorld.txt有两行内容)。

为什么Git添加文件需要两步呢?
因为commit可以一次提交很多文件,所以你可以多次add不同的文件。

版本回退

修改HelloWorld.txt文件如下:
Hello World
Hello ZhangSan

然后尝试提交:

$ git add HelloWorld.txt
$ git commit -m "append ZhangSan"

在这里插入图片描述
用git log命令查看:

$ git log

在这里插入图片描述
如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:

$ git log --pretty=oneline

在这里插入图片描述

现在我们准备把readme.txt回退到上一个版本
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交。
上一个版本就是HEAD^
上上一个版本就是HEAD^^
当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

现在,我们要把当前版本append zhangsan回退到上一个版本,就可以使用git reset命令:

$ git reset --hard HEAD^

在这里插入图片描述
使用cat查看内容

$ cat HelloWorld.txt

在这里插入图片描述
用git log再看看现在版本库的状态:

$ git log

在这里插入图片描述
最新的那个版本append ZhangSan已经看不到了。
想要回答最新的,只要上面的命令行窗口还没有被关掉,你就可以顺着往上找啊找啊,找到那个append ZhangSan的commit id是c674ddd,于是就可以指定回到未来的某个版本:
$ git reset --hard c674ddd
在这里插入图片描述
此外Git提供了一个命令git reflog用来记录你的每一次命令:

$ git reflog

在这里插入图片描述
可以看到commit id

Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,然后顺便把工作区的文件更新了。所以你让HEAD指向哪个版本号,你就把当前版本定位在哪。

工作区和暂存区

工作区(Working Directory)
就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区。
版本库(Repository)
工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
在这里插入图片描述
我们再练习一遍,先对HelloWorld.txt做个修改:
Hello World
Hello ZhangSan
chat GPT
然后,在工作区新增一个LICENSE文本文件。
先用git status查看一下状态:

$ git status

在这里插入图片描述
Git非常清楚地告诉我们,HelloWorld.txt被修改了,而LICENSE还从来没有被添加过,所以它的状态是Untracked。

现在,使用两次命令git add,把readme.txt和LICENSE都添加后,用git status再查看一下:

$ git status

在这里插入图片描述
git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。

$ git commit -m "understand how stage works"

在这里插入图片描述
一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的:

$ git status

在这里插入图片描述

管理修改

为什么Git比其他版本控制系统设计得优秀?
因为Git跟踪并管理的是修改,而非文件。

第一步,对HelloWorld.txt做一个修改,比如加一行内容:
Hello World
Hello ZhangSan
chat GPT
Gpt is Generative Pre-Trained Transformer

然后,添加:

$ git add HelloWorld.txt
$ git status

再修改HelloWorld.txt:
Hello World
Hello ZhangSan
chat GPT
Gpt is Generative Pre-Trained Transformer,The AI big model is more like the human brain.

提交:

$ git commit -m "GPT Readme"

在这里插入图片描述

再看看状态:

$ git status

在这里插入图片描述
怎么第二次的修改没有被提交?
第一次修改 -> git add -> 第二次修改 -> git commit
当你用git add命令后,在工作区的第一次修改被放入暂存区,准备提交,但是,在工作区的第二次修改并没有放入暂存区,所以,git commit只负责把暂存区的修改提交了,也就是第一次的修改被提交了,第二次的修改不会被提交。

提交后,用git diff HEAD – HelloWorld.txt命令可以查看工作区和版本库里面最新版本的区别:

$ git diff HEAD -- HelloWorld.txt 

在这里插入图片描述
注意:+后面是版本库缺少的。

撤销修改

git checkout – file可以丢弃工作区的修改:

$ git checkout -- HelloWorld.txt

在这里插入图片描述
git checkout – file命令中的–很重要,没有–,就变成了“切换到另一个分支”的命令。

如果已经git add到暂存区了,在commit之前,你发现了这个问题。用git status查看一下,修改只是添加到了暂存区,还没有提交:
在这里插入图片描述
用命令git reset HEAD 可以把暂存区的修改撤销掉(unstage),重新放回工作区:

$ git reset HEAD HelloWorld.txt

在这里插入图片描述
git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。
再用git status查看一下,现在暂存区是干净的,工作区有修改:
在这里插入图片描述

####### 删除文件
先添加一个新文件test.txt到Git并且提交:
在这里插入图片描述
如果你直接用rm命令删了:

$ rm test.txt

这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了:

$ git status

在这里插入图片描述

要确实从版本库中删除该文件,那就用命令git rm删掉,并且git commit:

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

现在,文件就从版本库中被删除了。在这里插入图片描述
小结:
git rm test.txt 相当于是删除工作目录中的test.txt文件,并把此次删除操作提交到了暂存区。
使用git checkout – test.txt相当于是让工作目录test.txt恢复到暂存区中test.txt的状态,但是工作目录中test.txt已经被删除,无法找到文件来再次删除所以报错,必须先使用git reset head test.txt在暂存区中将删除操作丢弃,然后在git checkout – test.txt就是直接将工作目录中test.txt恢复到版本库中的状态。

http://www.yayakq.cn/news/939305/

相关文章:

  • 网站建设开源代码设计师网址大全
  • 无锡宏腾网站建设制作一个网站需要哪些步骤
  • 做seo用什么网站系统nginx wordpress 管理
  • 企业内部网站建设方案白银区住房和城乡建设局网站
  • 专业建站公司服务cms网站群
  • 个人站点的制作简述企业形象管理咨询的基本内容
  • 对网站备案的认识佛山免费自助建站模板
  • 做资源下载网站条件石家庄网页设计公司有哪些
  • 想做个ktv的网站怎么做企业网站推广17
  • 凡科做的网站推效果建设网站实施条件
  • 普升高端品牌网站建设嘉兴做营销型网站
  • 网站效果主要包括微信公众号制作网站有哪些
  • harry louis做受网站wordpress 建站容易吗
  • 英文网站翻译怎么做呢贵州城乡建设官方网站
  • 水果网站模版网站备份文件
  • 30_10_郑州网站制作网页游戏4399在线游戏
  • 网站上传用什么软件做视频格式怎么建设自己网站的后台
  • wordpress动漫整站沈阳商城网站建设
  • php开发的大型金融网站有哪些网站建设发布教程
  • 网件路由器推荐SaaS网站可以做seo嘛
  • dede网站下载seo产品优化免费软件
  • ajaxjsp网站开发从入门到精通wordpress加cnzz
  • 扁平化网站建设公司网站都是怎么做的
  • 做网站公司郑州郑州的网站建设公司排名sql网站发布流程
  • 做企业网站申请域名深圳公司设计网站
  • 金马国旅网站建设分析区块链开发
  • 网站搭建怎么收费电池优化大师下载
  • 郑州seo建站大连网络营销公司
  • 如何自己建网站企业网站高权重网站做员会来顶排名
  • 网站管理密码网页布局结构