这是我参与「第五届青训营 」伴学笔记创作活动的第 9 天
Git
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
Git常用命令
在项目协作开发时,我们经常会用到一下命令:
git add
添加文件到暂存区
git commit
提交暂存区到本地仓库
git reset
回退版本
$ git reset HEAD^ # 回退所有内容到上一个版本
$ git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本
$ git reset 052e # 回退到指定版本
git pull
下载远程代码并合并(git fetch + git merge)
git push
上传代码至远程仓库并合并
git checkout
git checkout master :切换到master分支
git 找回
git checkout时遇到的问题
当我们使用git进行代码版本管理时,如果本地有多个并行开发的需求的话,我们会时不时地切换不同的分支。当我们基于当前分支做了一些改动,但是并没有执行git commit命令的话,这时如果我们想直接git checkout到另外的分支,那么idea就会弹窗提醒我们,选force checkout或者smart checkout。
两者有何不同
git checkout如果未提交本地代码。则会提示你选force checkout或者smart checkout。
smart checkout会把本地修改的代码先保存到statsh中,再checkout分支。
force checkout在当前分支修改的所有内容都会丢失,只能用以下步骤找回代码(找回后需要自行检查是否有错漏)
所以保险起见我们一般都是选择smart checkout。
不慎点击force checkout后如何找回
force checkout后可以通过以下步骤找回丢失的代码
在项目文件夹右键,点击local history->show history,查看本地存储到历史记录,可以选择丢失的文件进行 Revert。
如果你发现了文章出现了错误或有不足,欢迎在评论区和我交流,我看到了一定会回复。
写文章不易,如果你觉得文章对你有帮助,麻烦点一下点赞、收藏,你的支持是我写文章的最大动力!