git学习以及解决常见的报错问题

1. git常用指令

git中全局配置gitee的用户名和邮箱

git config --global user.name "gittee用户名"

git config --global user.email "git邮箱账号"

初始化本地项目

git init

把所有的文件一并添加到初始化的项目中

git add -A

提交项目中所做的操作进行备注

git commit -m "备注一下此次提交做了什么功能t"

添加提交项目的原地址的路径为https开头的

git remote add origin https://gittee仓库项目中的地址.git

//比如:git remote add origin https://gitee.com/java-web-development.git

拉取项目

git pull

发布项目

git push

在gitlab或者github或gitee中链接仓库ssh链接仓库ssh

git remote add origin ssh://地址 

查看是分有分支,甚至是否已经断开链接

git branch -v

查看是否断开链接,如果没有断开连接,会正确显示。断开连接的话会显示无内容

git remote –v

删除远程仓库

git remote remove orign

重新添加远程仓库

git remote add origin 仓库

提交信息到master仓库

git push -u origin master

把本地库与远程库关联【添加提交项目的原地址的路径为https开头的】

git remote add origin 你的远程库地址 
//比如:git remote add origin https://gitee.com/java-web-development.git

第一次推送时

git push -u origin master  

  第一次推送后,直接使用该命令即可推送修改

git push origin master  

查看本地的分支

git branch -vv

创建分支

git branch 本地分支的名称

切换分支

git checkout 分支的名称 

 删除分支

git branch --delete 本地分支的名称

2. git指令中常见的报错问题 +解决方案

 问题1:There is no tracking information for the current branch

 是因为本地分支和远程分支没有建立联系 (使用git branch -vv 可以查看本地分支和远程分支的关联关系) .根据命令行提示只需要执行以下命令即可

解决方案

git branch --set-upstream-to=origin/远程分支的名字  本地分支的名字

//否则的话, 你必须要指定想要push或者pull的远程分支。

git push origin 远程分支的名字 
git pull origin 远程分支的名字 

  

问题2:

 

 解决方案:加上origin从源分支找

git branch --set-upstream-to=origin/远程分支的名字  本地分支的名字
//origin不能少

  问题3:git中没有这个指令[指令有误]

 解决方案:修正指令

  问题4:git出现:git@gitee.com: Permission denied (publickey). fatal: Could not read from rem以及IDEA中配置GIT

  解决方案1

Git出现 fatal: ‘origin‘ does not appear to be a git repository fatal: Could not read from remote的解决方法_码农研究僧的博客-CSDN博客

 解决方案2

步骤1:添加/生成SSH公钥,码云提供了基于SSH协议的Git服务,在使用SSH协议访问项目仓库之前,需要先配置好账户/项目的SSH公钥。
绑定账户邮箱

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

利用下面命令生成sshkey:

ssh-keygen -t rsa -C “你注册或绑定的邮箱”   

这时会有要你输入文件位置和两次密码,不用输入,直接回车回车回车就行。

 步骤2:

ssh-agent -s

 

步骤3:通过查看生成的id_rsa.pub 文件内容,获取到你的 public key:

把ssh密钥添加到码云,打开C盘–>用户–>你的用户名–>找到.ssh文件夹。找到id_rsa.pub(如果有多个用最新的那个),用记事本打开,复制整个文本粘贴到gitee的ssh设置中(点头像中的设置选项卡,进入gitee设置面板,SSH设置,将复制的文本粘贴到公钥,标题会自动生成,然后点击添加,根据提示输入密码就可以了。)

 

 步骤4:将git客户端与码云绑定,返回有自己的gitee的用户名表示添加成功:

ssh -T git@gitee.com

 接着,使用IDEA配置git的所在位置,先在idea中添加git,再安装gitee插件后重启idea

【若从重启后在settings--version contro中还是没有见gitee的踪影,再次在plugins中安装gitee在重启idea就行】

 

 

 然后就可以在idea上使用了,如果在IDEA的Terminal中使用git出现'git' 不是内部或外部命令,也不是可运行的程序或批处理文件。那么就需要配置git进环境变量了。计算机--属性--高级系统设置--环境变量--path--新建一个添加进去就好:

 

 问题5:解决git仓库和本地项目无法同步

解决方案

0.创建git仓库中的两个分支分别为master和develop

1.本地项目内的文件不能为空,也不能没有文件

 2.使用git init对这个本地项目进行初始化

3.先使用git commit -m 初次提交这个项目

 4.使用git命令在本地项目中创建分支

 问题6:gitee提交的仓库版本和本地版本冲突的解决方法

 解决方案1:强制覆盖已有的分支

git push -u origin master -f //强制覆盖已有的分支

 

解决方案2:若push项目提交失败,报错: master -> master (non-fast-forward)命令,尝试先使用pull后再push

 git pull
 git push --force origin master//(代替git push origin master)

 

 解决方案3:本地仓库与线上仓库的内容不匹配,或者说本地相对于远程不是最新,先pull更新本地,再把自己的push上去。如果不想代码清光光的话,切忌使用-f 强制push【企业开发忌用】

//先pull远程仓库,再push
git pull origin master --allow-unrelated-histories //(该选项可以合并两个独立启动仓库的历史)
git push -u origin master

 解决方案4:

$ git pull --rebase origin master

$ git push -u origin "master"

//查看项目的提交记录信息
$ git log

//最后查看gittee官网中的master主分支项目中成功提交项目上去了
//或者是在git控制台中用git log查看项目的提交记录和备注信息

问题7:分支有内容,未提交无法切换分支

解决方案:

先在master分支先用git commit命令进行提交后,再用git stash命令暂存这个信息,最后再使用git checkout 指令来切换到新分支

 

  总结:如果分支和主分支不在同一个commit时。来回切换分支时才会提示stash。如果在同一个commit时修改文件,切换分支后,已修改的文件会继续存留在分支

拓展:

0. 列出所有的暂存记录

git stash list

如果在dev上已经解决了问题,这个时候想要回到master,并且想要恢复切换之前的文件状态。可以使用以下两种方式:

1. pop命令会将暂存的文件从存储的栈中取出来,并从栈中删除暂存的记录。

git stash pop

2. apply会从栈中取出暂存的文件状态,但不会删除暂存的记录。

2.1 如果不指定暂存,apply会默认从最近的暂存记录

git stash apply

2.2 apply指定取出栈中哪一条记录

git stash apply stash@{1}

问题8:Updates were rejected because the tip of your current branch is behind its remote counterpart

解决方案:

解决Updates were rejected because the tip of your current branch is behind its remote counterpart问题_潇洒与冒险的博客-CSDN博客

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值