一、git版本回退
- git版本管理的好处就在于可以方便的切换回之前某次提交的版本。一旦在更改过程中发现误操作或忘记修改了哪部分内容导致程序无法运行,可以从最近的提交进行恢复。
- 通过git log命令可以看到最近到最远的提交日志和版本号
要想使日志输出的更简单,可以用如下的命令
git log --pretty=oneline
3. 回退到某一历史版本
通过如下命令可以回退到指定的历史版本,版本号不用写全,写前几位即可。
git reset --hard 版本号
同时如果想回退到最近的版本时,可以不通过指定版本号,git中当前的版本默认为HEAD,上一个版本为HEAD^ ,再上一个版本为HEAD^^,以此类推;同时HEAD~ 1可代表上一个版本,HEAD~2代表上上一个版本,以此类推。
4. 回到未来的某一版本
只要知道未来版本的版本号,就可以仍然通过git reset命令回到未来的某一版本号,但由于回退到过去版本后,通过git log命令将无法看到未来版本的版本号,那么如何来回到未来的版本。
通过如下命令可以看到之前执行过的git 命令
git reflog
这里可以看到历史提交及切换版本的操作记录,我们很容易看到我在回退前的版本的版本号321df34,通过执行git reset --hard 321df34再次回到未来版本。
二、未commit前反悔了怎么办
- 比如在将文件修改add到暂存区后,通过git status命令可以看到当前的记录状态。
- 通过如下命令可以将暂存区的指定文件重新放回到工作区。
git restore --stage 5.txt
3. 再次通过如下命令,可以撤回在工作区对指定文件的操作。
git restore 5.txt
三、远程仓库
- git本地仓库可以与远程仓库进行同步,既可以将本地仓库备份到网络,也可以实现多人协作。
- 登陆到github上,在右上角找到“Create a new repo”按钮,创建一个新的仓库,Repository name填入Git_Repository,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库。
- 通过以下命令完成本地仓库与远程仓库的链接,用户名的地方要改成自己的github的用户名。
git remote add origin git@github.com:BigBirdFlying /Git_Repository.git
- 在首次像github上的空仓库首次提交时,需要执行以下的命令。
git push -u origin master
在提交的过程中如果出现如下提示,可以不用理会,输入yes就行,后续不会在显示。
但如果在配置本机git时配置的email地址和github注册的email地址不同时,会出现如下错误,此时说明我们没有权限向github上推送,这样也对,不然岂不是所有人都能去推送,那不是乱了。
那么如何才能进行推送呢,首先需要通过如下命令在本机上创建ssh密钥,后面的邮箱根据自己的设置。
ssh-keygen -t rsa -C 1136974401@qq.com
执行过程中遇到等待的地方一直回车即可,最后会在用户主目录下生成.ssh文件夹下生成id_rsa.pub文件。
登陆到github上,点击Settting选项,找到SSH and GPG keys,点击其中的New SSH key在标题中自定义命名,在Key中复制上述提到的id_rsa.pub文件中的内容,点击Add SSH key完成。
此时再试着推送一下,成功。
四、GUI客户端下远程仓库配置
- git上配置完远程仓库后,再sourceTree控制端上可以看到远程仓库的状态。
双击master,弹出如下如下对话框
从显示分支处可以看到远程分支和本地分支指向同一版本。 - 但目前推送的话还是会出现问题,点击推送按钮会出现如下提示框,推送失败。
- 配置ssh,点击工具->选项,选择OpenSSH,点击确定,再次推送可以看到推送成功。
来源:CSDN
作者:Hkj爱学习
链接:https://blog.csdn.net/okmnbvcxzaqwertyui/article/details/104534374