【git】git常用命令及所遇问题解决方法-小结

git常用命令–小结
所遇到的问题会随时更新

git常用命令梳理

萌新git常用命令总结,要开始了哦~预备!走你!

围攻git常用命令!

1.git查看并设置用户名及邮箱
查看
git config user.name
git config user.email
设置
git config --global user.name “username”
git config --global user.email useremail@qq.com
补充: git config --system --unset credential.helper 重置账号密码
2.git拉取项目代码
本地创建文件目录,切换到代码存放目录,克隆代码:git clone -u [路径] -b [分支];
如何将一个包含子项目的项目所有内容都clone下来呢?
git clone https://xxx.xx.xxx/xxxx/xxx.git --recursive
3. 切换分支并更新代码
git checkout 【分支】 //切换分支
git pull origin 【分支】 //更新代码
4. 提交代码,添加注释并推送到对应分支
注意咯:先使用git status查看已经修改的代码文件
git add [提交的代码文件] //提交代码
git commit -m “注释” //为提交的代码添加注释
git commit -m “注释” --no-verify // 不检查提交的代码
git commit --amend //实现增量提交
git push origin 【分支】
5. 回退版本
git reflog
会出现之前几次提交的版本
git reset --soft //将本地的版本回退到最近提交的状态,保留本地修改
git reset --hard //将本地的版本回退到最近提交的状态,不保留本地修改;
6. 解决代码冲突
git pull origin 【分支】//拉取分支代码,发现冲突的情况后,可用下面技能解决掉它
git stash save ‘[name]’ // 暂存代码
git stash list // 查看暂存区列表
git pull origin 【分支】// 此时可拉取分支代码,不会报错了哟
git stash pop 【暂存区列表序列号】 // 取出暂存的代码
git add …;// 用4技能进行提交代码
7.创建分支/删除分支
git branch -a // 查看所有分支
git checkout -b 【分支名】// 创建分支
git branch -d 【分支名】// -d 全写:–delete,删除分支(当前分支必须从上游分支完全合并才能删除)
git branch -D 【分支名】// -D 全写:–delete --force,强制删除分支(无论当前分支的合并状态如何)
8.查看依赖版本
npm view [依赖名] version (version查看当前依赖版本,versions查看当前依赖之前的所有版本)
9.设置git的代理服务器
git项目时,有时速度比较慢,可以设置–depth=1,只要最后一个版本的代码,而不要.git目录中的东西
git clone --depth=1 https://github.com/Project-OSRM/osrm-backend.git

git config --global http.proxy http://127.0.0.1:8580
git config --global https.proxy https://127.0.0.1:8580
git config --global http.SSLVERIFY false
10.Git本地库的创建:
在本地库的文件夹下执行:git init
11.Git状态管理
命令:git status –显示git的当前状态(修改的文件)
git diff –查看文件的修改内容
git log –显示Git操作日志,查看提交历史
12.检查本地配置
git config --local -l

git所遇问题及解决方法记录

1.在两个分支合并的时候,出现了下面的refusing to merge unrelated histories错误:

$ git pull origin develop
fatal: refusing to merge unrelated histories

原因:
两个分支没有取得关系
解决方法:
在操作命令后面加–allow-unrelated-histories

$ git pull origin develop --allow-unrelated-histories

2.git push错误failed to push some refs to的解决
在这里插入图片描述
原因:
当我们在github版本库中发现一个问题后,你在github上对它进行了在线的修改;或者你直接在github上的某个库中添加readme文件或者其他什么文件,但是没有对本地库进行同步。这个时候当你再次有commit想要从本地库提交到远程的github库中时就会出现push失败的问题。
解决方法:
git pull --rebase origin 【分支名】
这条指令的意思是把远程库中的更新合并到本地库中,-–rebase的作用是取消掉本地库中刚刚的commit,并且把它们临时 保存为补丁(patch)(这些补丁放到”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中。
3.git clone错误之"error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054"

当我们使用git clone指令从github 上download其它优秀的代码时,如果报如下错误

RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054

原因:
服务器的SSL证书没有经过第三方机构的签署
解决方法:
第一步,克隆远程仓库时,用env命令设置GIT_SSL_NO_VERIFY环境变量为”ture”,并同时调用正常的git clone命令。完整的命令如下:

env GIT_SSL_NO_VERIFY=true git clone https://<host_name/git/project.git

第二步,在克隆完毕的仓库中将http.sslVerify设置为”false”。完整的命令如下:

git config http.sslVerify "false"

4.Git令人头大的报错“ERROR: Permission to XXX.git denied to user”
解决方法:windows系统下,打开 控制面板->用户账户->凭据管理->windows凭据。在普通凭据中找出git的凭据,删除,然后在控制台重新认证即可。
5.git报错:remote: HTTP Basic: Access denied

$ git push origin master
remote: HTTP Basic: Access denied
fatal: Authentication failed for 'http://amGITHUBpmOURgitlab:8060/start0627/mpBMCwepy.git/'

原因:账号密码有变动
解决方法:
git config --system --unset credential.helper 重新输入账号密码

参考网址:链接: https://blog.csdn.net/programerxiaoer/article/details/74067155?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-2&spm=1001.2101.3001.4242.
链接: https://blog.csdn.net/u013412772/article/details/80289851?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242.
链接: https://blog.csdn.net/twtje0304_01/article/details/84347993?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control.

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值