Git的使用

发布于:2024-04-14 ⋅ 阅读:(173) ⋅ 点赞:(0)

如何将文件交给Git接管

我们写代码的环境称为工作区,在工作区的文件是不能被Git接管的。所以首先需要使用命令git add XXX 将文件添加至版本库中。经过add后的文件存在于暂存区(索引),之后再进行git commit命令将文件提交到Git。才算真正被Git接管了。可以通过git log查看历史提交。

其中objects存放的是每一次修改后的版本。暂存区和master里面存的是一个个的索引,指向不同的文件版本。

如何查看修改

git status: 可以查看哪些文件被修改了。也可以查看是否有未add的文件或者是否有未commit的在暂存区中的文件。如果没有这种文件,就会提示nothing to commit.

git diff XXX : 可以查看XXX文件被修改了哪些内容。

版本回退 

使用git reset --soft/mixed/hard ID ,其中soft是只回退版本库的内容,mixed是回退版本库和暂存区的内容,hard是全部回退包括工作区。ID指的是通过git log命令查看得到的commit id。

原理:回退实际就是把指针的指向(指向的是objects里面的内容)改变了。

下面是不同情况下的版本回退以及解决方法:

其中HEAD参数表示回退到当前版本。HEAD^表示回退到上个版本。这个先后版本都是针对版本库里面的数据来描述的。

删除文件

1.使用rm直接删除工作区的文件。

2.使用git rm 文件名的方法删除了工作区和暂存区的数据,之后进行git commit操作后版本库的数据就被删除了。

分支

分支顾名思义就是在本次版本中,开辟出一条“支线”进行开发。在分支中的修改操作不会影响到master分支。相当于是一个副本。若想实现在master分支上看到新开辟分支修改的内容。那么首先需要在新分支上commit之后。切回主分支。使用git merge 分支名 实现合并。

删除分支

git branch -d 分支名,前提是要在主分支上操作。

分支冲突

分支冲突指的就是当多个分支commit之后,master分支也进行了修改。而恰好它们修改的地方一样或者部分一样。那么当git merge之后,就会因为不能决定保留哪个版本的修改而出现冲突。一般情况下需要手动去接触冲突。选择要保留的版本。

分支存在的意义

远程仓库

git push origin +本地分支名:远程分支名  ,将修改推送至远程仓库。

git pull origin + 远程分支名 :本地分支名 ,将远程仓库的新数据拉取到本地。