增加github 新技能
Git 工作区、暂存区和版本库
基本概念
我们先来理解下Git 工作区、暂存区和版本库概念
工作区:就是你在电脑里能看到的目录。
暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
下面这个图展示了工作区、版本库中的暂存区和版本库之间的关系:
打开Git Bash。
粘贴以下文本,替换为您的GitHub电子邮件地址。
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
使用提供的电子邮件作为标签,这将创建一个新的ssh密钥。
Generating public/private rsa key pair.
当系统提示您“输入要在其中保存密钥的文件”时,请按Enter。这接受默认文件位置。
Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter]
在提示符下,键入一个安全密码。有关更多信息,请参阅“使用SSH密钥密码短语”。
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
将SSH私钥添加到ssh-agent。如果您使用其他名称创建密钥,或者要添加具有其他名称的现有密钥,请使用私有密钥文件的名称替换命令中的id_rsa。
$ ssh-add ~/.ssh/id_rsa
.git被git接管了
解决分支问题,git 新建一个分支解决问题
https://blog.csdn.net/qq_36079972/article/details/100279562
为什么要提交到commit命令
git log 查看git 日志
gitshow 查看
运行reset 回滚
运行那个reset commit id 可以保留那个id之前的东西 这个东西是倒叙的
小结
又到了小结时间。
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
感觉大家把简单问题复杂化了,看着头晕,
Git管理的文件分为:工作区,版本库,版本库又分为暂存区stage和暂存区分支master(仓库)
工作区>>>>暂存区>>>>仓库
git add把文件从工作区>>>>暂存区,git commit把文件从暂存区>>>>仓库,
git diff查看工作区和暂存区差异,
git diff --cached查看暂存区和仓库差异,
git diff HEAD 查看工作区和仓库的差异,
git add的反向命令git checkout,撤销工作区修改,即把暂存区最新版本转移到工作区,
git commit的反向命令git reset HEAD,就是把仓库最新版本转移到暂存区。
传博客到GitHub