Git基础用法


Git基础用法

一、Git常用命令

git init						#初始化一个新的Git仓库

git clone <远程仓库url>			 #克隆一个远程仓库到本地					

git add <文件名>				  #添加文件到暂存区

git commit -m "提交描述信息"		#提交暂存区文件到本地仓库

git push <远程仓库名> <分支名>	   #推送本地提交到远程仓库

git pull						#拉取远程仓库的更新

git status						#查看Git仓库的状态

git diff						#查看文件修改的差异

git log							#查看提交记录日志

git checkout <分支名>			  #切换到其他分支

git checkout -b <新分支名>		 #创建新分支并切换到该分支

git merge <分支名>				  #合并分支

git branch						#列出所有分支

git branch -d <分支名>			  #删除分支

git reset						#撤销暂存区的修改

二、Git核心原理

Git核心原理

三、Git工作流程

  1. 克隆(Clone)远程仓库:通过 git clone 命令将远程仓库克隆到本地,创建一个本地的 Git 仓库副本。
  2. 创建分支(Branch):在本地仓库中创建一个新的分支,用于进行特定的开发工作。可以使用 git branch 命令创建新分支,并使用 git checkout 命令切换到新分支。
  3. 在分支上进行开发:在新创建的分支上进行代码编辑、添加、修改等开发工作,可以使用 git add 将修改添加到暂存区,然后使用 git commit 提交到本地仓库。
  4. 同步更新:在开发过程中,可以使用 git pull 拉取远程仓库的更新,保持本地仓库与远程仓库的同步。
  5. 解决冲突:如果在拉取更新时发生冲突,需要手动解决冲突,然后使用 git add 将解决后的文件标记为已解决,并使用 git commit 提交解决后的代码。
  6. 合并分支:在完成开发工作后,可以使用 git merge 将当前分支合并到主分支或其他目标分支,将修改合并到目标分支。
  7. 推送提交:在本地完成开发并确认无误后,可以使用 git push 将本地仓库的提交推送到远程仓库,与其他开发者共享代码。

四、实例演示

1、创建GitHub仓库

创建GitHub仓库,并复制url到本地文件夹中进行clone。

clone远程仓库

可以看到本地仓库中已经更新为远程仓库

初始GitHub仓库内容

2、提交修改

对text.md进行修改,输入add指令将修改后的文件添加到暂存区,通过status指令可以看到当前状态:text.md被修改,可以被提交。

git add

输入commit指令将当前暂存区文件到本地仓库,通过status指令可以看到当前状态:显示工作区没有内容需要提交。

git commit

3、Push到GitHub仓库

输入push指令将本地仓库的提交推送到远程仓库。(此处先前设置过GitHub SSH密钥,故push不需要再输入账号密码或个人访问token)

git push

此处可以看到GitHub远程仓库已同步本地所作的修改。

push成功

4、pull拉取远程仓库的更新

此处在GitHub上对text.md进行修改2,输入pull指令拉取远程仓库的更新,即可看到本地文件已经与远程仓库同步

git pull

5、分支

5.1 新建、切换分支

新建分支feature1并进入分支。

新建分支

在分支feature1中修改text.md文件并提交。

feature1修改

回到main分支,再新建分支feature2进入分支,在分支feature2中修改text.md文件并提交。

feature2修改
5.2 合并分支

回到main分支,此时将feature1作的修改合并到main分支

合并feature1

此时如果将feature2作的修改也合并到main分支,则会发生合并冲突,合并失败,因为此时git不清楚对于两个分支要保留哪一个的修改。

合并feature2
5.3 合并冲突

此时打开text.md文件(输入指令vi text.md),=====上面的部分代表当前分支对文件的修改,下面代表想要合并进来的分支对文件的修改。此时只能保留上一部分或者下一部分。

冲突后的text.md文件

修改文件冲突,保留feature2的修改,再次add和提交text.md文件,此时查看分支状态可以看到feature1和feature2两个分支已经合并。

合并状态
5.4 推送分支

此时将合并后的分支推送到远程仓库上

推送合并后的分支

可以看到远程仓库上的text.md已经是被feature2合并后的最新版本。

远程仓库

也可以通过git push origin “分支名”来推送其他分支。

5.5 拉取、跟踪分支

通过git fetch可以将远程仓库的分支信息更新到本地仓库中。git log命令可以看到本地仓库已经获取feature1分支。

拉取分支

此时可以创建跟踪分支,一个与远程仓库中的特定分支保持同步的本地分支。

跟踪分支

这里只是对Git基本的命令和流程进行了记录,更规范的流程可以见这个B站视频十分钟学会常用git撤销操作,全面掌握git的时光机_哔哩哔哩_bilibili

参考资料:

Git工作流和核心原理 | GitHub基本操作 | VS Code里使用Git和关联GitHub_哔哩哔哩_bilibili

十分钟学会正确的github工作流,和开源作者们使用同一套流程_哔哩哔哩_bilibili

30分钟弄懂所有工作Git必备操作 / Git 入门教程_哔哩哔哩_bilibili


文章作者: Woilin
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Woilin !
评论
  目录