美文网首页
git学习记录

git学习记录

作者: 二傻吧 | 来源:发表于2019-01-10 13:16 被阅读0次

git安装好以后通过win+r,输入cmd,打开命令窗口,cd进入到自己新建的文件夹,git init新建一个git仓库。

git中,我们理解有三个类型的库,一个是我们目前所在的工作路径文件夹(也就是现在自己刚刚cd进来的新建的文件夹),这个文件夹用来存放我们最新的文件,第二种是用于缓存你修改后的文件版本的,第三种是用于最终储存你想放入,存起来的文件的仓库。

在这个新建的文件夹中,打开隐藏文件可以看到自己的.git文件夹,在新建的文件夹中再建一个文件,比如filename文件,现在想把这个文件加到git仓库中,

1.首先需要将文件加到缓存库中。

git  add filename

2.再之后需要将缓存库的内容加到git仓库中

git commit -m “ the description”

3.恢复缓存区文件

如果本地文件有修改,则可以通过add将缓存区的内容用新文件覆盖,或者用缓存区的文件覆盖掉本地的新文件。

git checkout filename

4.恢复git仓库文件

另外有reset。reset也有这样恢复文件的作用。reset可以把git仓库的文件恢复到本地。其中有三种选择,--mix,--soft,--hard。三种不同的功能。

(reset实际上有3个步骤,根据不同的参数可以决定执行到哪个步骤(--soft,--mixed,--hard)。

改变HEAD所指向的commit(--soft)

执行第1步,将Index区域更新为HEAD所指向的commit里包含的内容(--mixed)

执行第1、2步,将Working Directory区域更新为HEAD所指向的commit里包含的内容(--hard)

注意

–mixed是默认参数,也就是说执行reset的时候不给就认为是--mixed。

下表说明了三种形式的git reset所产生的不同效果。

target代表想要将git指向到哪个commit

)此内容来自https://blog.csdn.net/love_hot_girl/article/details/80902386,感谢楼主。

如果要回到上一个状态,可以用git reset HEAD^.上上个状态可以用git reset HEAD^^,有几个^就代表恢复到上几个状态,但是如果次数太多可以直接用~n来表示,例如

git reset HEAD~100

就代表回到前100的状态。

5.查看git所有库状态

如果要查看当前git中的状态我们 可以用git status。其中会有提醒哪些文件发生了改变还没有提交。

6.查看提交记录

同样我们可以通过git log查看我们操作过的命令(只显示commit之后的,每个commit都有一个对应的commit id,我们可以结合reset和commit id来恢复我们想要的某一步中的文件)

7.查看全部提交记录

git log可以查看目前库中commit的记录。但是被reset覆盖之后的记录是无法查看的。我们可以用git reflog来完成这个目的,查看所有出现过的commit id。

8.新增分支

git中初始化时会有一个默认的分支,名为“master”,有时候我们需要把项目做一个复制本出来调整bug。可以通过新建分支来完成,也就是把我们接下来要改的内容都放在一个新的仓库中。不跟原版本冲突。

git branch br-name

这就完成了一个名为“br-name”的分支的新建

可以通过git checkout br-name来切换到“br-name”分支 。

也可以合并上面的两步,直接用

git checkout -b br-name 来新建一个名为“br-name ”的分支,并把目前的指针指向br-name 。

9.合并分支

有时候需要把改好的分支进行内容合并。那我们可以通过git merge。

也可以直接用git br-name1 br-name2来合并两个分支。

10.删除分支和文件

10.1删除分支

git中我们合并完分支以后需要将之前的复制本,也就是那个分支删掉,可以用

git branch -d br-name(这个命令适合合并之后删除)。

如果你不想合并就直接把分支删掉,可以用git branch -D name。强制删除。

10.2删除文件

如果我们本地删除了一个文件,git中只会提醒你,状态发生变化了,但是不会影响到git库中的文件。如果想删除缓存区的文件

git rm --cached name

可以完成缓存区的删除。

如果是想删除git库里的文件,可以直接用git rm filename,完成删除。

删除后如果你想恢复文件还可以通过git checkout filename来恢复。

但是如果在rm 后面加了-f这个参数的话,文件将无法恢复。

相关文章

  • Git 学习记录

    Git 学习记录 设置Git的user name和email:git config --global user.n...

  • git学习记录

    git init创建git仓库 git add添加文件到仓库 git commit -m "xxx"提交文件到仓库...

  • git 学习记录

    1、git init :初始化所在目录为git仓库(在这个目录里,可以理解为一个虚拟的空间,.git文件隐藏存在,...

  • git 学习记录

    什么是git ,git是一个分布式版本控制工具 ,而svn 是 集中式 给当前的git仓库配置用户名和邮箱 配置用...

  • Git 学习记录

    Git作为项目管理工具,已经成为开发者首选。Git概念繁多,理解不清楚,还真不太好办事。现将这段时间学习使用Git...

  • git学习记录

    工作区{ } 版本库{ } git常用命令 多人协作

  • Git 学习记录

    git addgit commitgit statusgit loggit diffgit reloggit lo...

  • git学习记录

    2016-02-28 git --versiongit config --global user.name ***...

  • Git学习记录

    欢迎访问我的博客muhlenXi,该文章出自我的博客。 版权声明:本文为muhlenXi原创文章,转载请注明出处,...

  • 记录Git学习

    1.git简介 Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓...

网友评论

      本文标题:git学习记录

      本文链接:https://www.haomeiwen.com/subject/csmfrqtx.html