git工作流程

本文详细介绍了Git的本地仓库初始化、文件操作、版本回退、分支管理和冲突解决等核心功能。通过`git init`、`git clone`建立仓库,使用`git add`、`git commit`进行版本提交,借助`git branch`和`git merge`管理分支,以及`git checkout`和`git reset`实现版本回退。在遇到冲突时,需手动解决并重新提交。此外,还讲解了如何删除和重命名文件,以及如何安全地删除已合并或未合并的分支。

原理

 

 

 一、本地仓库搭建 (初始化)

两种方式

1.git init 

2.git clone 

二、git文件操作

  

 

 

 

 如果两个人同时修改一个文件,则需要把分支合并

 基本命令操作

1. 状态查看 `git status`

命令查看工作区文件是否被追踪(文件状态)

 2. 添加到暂存区

git add 文件名

将单个文件添加到暂存区

git add .

将当前目录下所有修改或新增的文件全部添加到暂存区

3. 提交版本库

**git commit**

回车之后会进入到 vim 编辑器中,需要输入这次提交的日志

**git commit -m "这次提交的日志"**

回车之后直接提交了,不会进入 vim 中

**git commit -am**

将工作区的文件提交到版本库中(前提是文件之前被提交过)git add和git commit -m的组合技

4. 查看历史记录

**git log**

列出从当前版本为止全部的提交日志,

如果一屏展示不下,可以使用键盘操作翻页。这时使用 Ctrl + C 退出不了。可以使用 q 来退出

git log --pretty=oneline

以一行的方式来列出

git log --oneline

以一行的方式来列出,commitId 比上一个更简短

git log -<num>

列出最近的 num 条提交日志

git reflog

列出最近git的所有相关操作日志。版本前进时可以参考

5. 版本回退

版本回退的本质:

就是一个 HEAD 指针的操作

**git checkout  --   文件名**

拉取暂存区的**指定**文件将其替换工作区的文件 注意文件名和--之间要有空格空格空格

**git  checkout  --  .**

拉取暂存区的**全部**文件将其替换工作区的全部修改:

 

**git  reset commitid .**

拉取最近指定版本库中全部到暂存区,该操作不影响工作区

 

**git reset --hard commitid**

拉取指定**版本库的文件将其替换工作区**的文件

 6. 删除文件

**git rm --cached 文件名** 将文件从缓存区删除

7.重命名

mv 文件名 新文件名会将工作区文件进行更名

2.4 分支管理

查看分支

查看本地仓库的分支情况

**git branch**

 

查看远程仓库的分支情况

**git branch -r**

查看本地与远程的所有分支情况

**git branch -a**

 4. 创建分支

git branch <分支名字>        只是创建分支

 git checkout -b <分支名字>    创建分支,并切换到新创建的这个分支上

5. 切换分支

git checkout <分支名字>

 注意:本地如果不存在这个分支,则会把远程的给弄下来,如果远程也没有,就报错

6. 合并分支

先切换被合并的分支上。

使用 git merge <需要合并的分支>

7. 合并时解决冲突

原因:两个分支在同一个代码上的某一个位置做了修改,这些 git 合并时不知道该听那个分支的。

1 找到有冲突的文件

2 删除这个文件中的特殊标记 (<<<<<<<,=======,>>>>>>>标记出不同分支的内容)

3 找到相应的开发人员去商量到底如何处理这个情况,用你的,还是用我的,或者两个都保留

4 git add

5 git commit

 8. 删除分支

git branch -d <分支名字>      以及合并过的分支可以这样去删除

git branch -D <分支名字>      没有合并过的分支,但是里面有代码修改,使用 -d 删除,是删除不了的。确定要删除,就是用 -D

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值