git 常见问题解决

常用命令  

1.撤销 commit         git reset --mixed HEAD^   此操作同时撤销add

以上操作将把HEAD指针移动到父提交,但不会改变工作目录中的文件,修改将被保留

2. git commit --amend 

用于修改最近一次提交信息的 Git 命令。它可以用于更正提交信息、添加漏掉的文件或修改之前提交的文件

提交一次后,需要修改,则使用该命令,可以修改提交信息,同时如果修改了文件,也可add.新内容,然后也使用这个提交,他并不会创建新的提交对象,而是修改了已有的提交对象。

这样就可以把新写的内容添加到上一次的提交中。

注: 如果已经推送到远程仓库了,需要使用强制推送 (git push --force) 来更新远程仓库的提交历史。


1. 问题:尝试推送到一个名为“chenx”的远程存储库。错误消息显示无法找到所需的项目。

    原因:我在xn的帐号中修改的代码,推到chenx自己fork的仓库,xn的gitlab没有添加我密钥

对策:只能在自己的帐号中修改密码提交等操作,才能提到自己的fork仓库


2. 问题:切换分支时 ,如果提示有未提交的,会提示本地修改会被检出覆盖, 却换分支会被终止。

      原因:本地修改的文件未提交。

对策1: git checkout -- config/data_config.yaml  不保存修改

        git checkout -- <file> 命令用于撤销指定文件在工作目录中的修改,将其恢复到上次提交时的状态。

 对策2:如果您暂时不想提交修改,但又不想丢失这些修改,您可以使用 Git 的贮藏功能,将修改暂时存储起来,然后再切换分支。

git stash   # 贮藏当前的修改
git checkout branch_daimler

3.问题:尝试进行 git pull 操作时,远程仓库上有文件需要更新到您的本地仓库,但这些文件在您本地的工作目录中是未跟踪的(untracked)。因此,Git 不知道如何处理这些文件的更新,因为它们不在 Git 的版本控制之下。

        原因:未添加gitGit 的版本控制

        对策:

4. 拉取的时候 遇到如下问题:

        错误提示意味着你的本地修改将会被合并操作覆盖掉。通常情况下,这是因为在你试图进行代码合并时,发现了冲突,即有多个版本的修改与你的本地修改产生了冲突。

        原因:有多个版本的修改与你的本地修改产生了冲突

        对策:1.不要所有的本地修改,git reset --hard origin/branch_daimler

        将本地的 HEAD 移动到了与远程分支 branch_daimler 相同的位置,这会导致您的本地工作目录和索引与远程分支完全一致。这也意味着您的本地任何未提交的更改都已经被删除,并且您当前处于 branch_daimler 分支上的最新状态。

5. git pull时 

显示由于你的本地修改会被合并操作覆盖,所以 git pull 操作被中止了。

解决: git checkout .


6. git push时   已经拉取最新的代码了,仍然显示落后远程分支

我猜测的原因是,我之前提交的一次记录没有被合并到origin/branch_daimler,导致我的远程分支的提交记录与当前提交存在冲突, 因为我上次的提交没有用,所以没被合并到origin中,所以我强制推送来解决此问题。

解决 :git push --force chenx


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值