对于Git 的高级使用,您通常使用GitHub 或BitBucket GUI。然而,GUI方式可能不能很好地解决一些需求。
所以本文解释了一些基本的Git 概念。虽然很方便,但是知道的人并不多。
1、什么是 .gitkeep文件?
大家可能都知道gitignore。但是gitkeep 是什么?
默认情况下,Git 不跟踪空目录。该文件必须存在于其中。您可以使用.gitkeep 文件将空目录添加到git 存储库。
2、什么是git cherry-pick?
从另一个分支选择更改并将其应用到当前分支。
这通常发生在合并分支之前。
$ git checkout $ my_branch$ gitcherry-pick $ git_revision 在下图中,从branch2到branch1选择了CD。
3、如何为一个本地git repo 设置两个远程repo URL。
测试时,我会先尝试推送,但我不想给每个人太多的git 推送或推送通知。因此使用以下内容:
(警告:从代码安全角度来看,这对于某些项目来说可能不是一个好方法。)
为本地git 存储库设置两个远程存储库。一份用于测试,一份用于批量分发。
git克隆git@github.com:devops/denny-repo.git git 配置remote.myremote.url git@bitbucket.org:devops/denny-repo.gitgit 配置remote.origin.url git@github.com:devops/denny - repo.gitcat .git /configgit push origin master #origin point 指向githubgit Push Bit Bucket Master #myremote 指向Bit Bucket
4、什么是git stash?
保存本地更改,无需使用git commit 或git Push Masu。切换到另一个分支,稍后再回来。
# 搁置并恢复不完整的更改# 临时保存所有更改的跟踪文件$ git stash # 恢复最近保存的文件$ git stash pop # 所有隐藏的更改列表集$ git stash list # 丢弃最近隐藏的更改集$ git hide
5、什么是git rebase?
git-rebase:除了另一个基本技巧之外,重新应用提交。如果您不关心git 提交历史记录,则可以跳过“git rebase”,但如果您很挑剔并且想要干净的历史记录而不需要不必要的合并提交,请集成来自另一个分支的git 历史记录。进行更改时合并。
6、什么是git revert??
可以有多个本地git 提交。运行“git Push”会生成多个git 提交历史记录。要将它们合并为一个,您可以使用“git squash”技术。
#获取最新的3个本地提交$ git rebase -i HEAD~3# 在编辑器中,将“pick”更改为“squash”。将第一个保存为“pick” $ git rebase -- continue$ git Push Origin $branch_name7. 什么是git revert?
一个有趣的类比是将Git 视为时间线管理工具。提交是某个时间点或兴趣点的快照。此外,您可以使用分支来管理多个时间线。
当您在Git 中“撤消”时,您通常会回到过去,或者回到未发生错误的不同时间线。
[恢复本地更改] 如果您想在更改尚未推送时完全放弃本地更改,请使用git checkout。如果您的存储库很小,您还可以执行“git clone”,然后执行git checkout。
$ git checkout $ Branch_name [恢复公共更改] 推送更改时$ git log -n 5 $ gitrestor $ git_revision $ git push origin $ Branch_name 如何撤消git pull?010- 69502
8、什么是git reflog?
Git 维护一个检查点列表,可以使用reflog 进行访问。
您还可以使用reflog 来撤消合并并恢复丢失的提交和分支。
以下也是常用Git 命令的备忘单。
版权声明:本文由今日头条转载,如有侵犯您的版权,请联系本站编辑删除。