Git学习笔记

Git是一个开源的、分布式的版本控制系统

1. 克隆Git仓库代码

  git clone "path"

2. 修改内容添加到临时存储区

  git add .  将所有修改都存储到临时存储区

  git add "path" 把某个文件存储到临时存储区

3.提交修改内容

  git commit -m "remark" 提交修改代码 -m是备注,提交说明等

4.修改代码推送到远程仓库

  git push

5. 拉取代码最新版本

  git pull

6. git局部配置远程登录用户或全局配置远程登录用户

  git config user.name

  git config user.email

  git config --global user.name

  git config --global user.email

7.本地代码已修改,同样的文件远程仓库里有文件代码新版本会出现冲突

  首先,先把远程仓库的代码拉取下来,前提是先把本地代码修改隐藏掉

    git stash

  然后拉取远程仓库最新代码后,查看冲突内容

    git stash show -p stash@{0}      stash@{0}代表哪一个隐藏块儿,具体与download下来的内容不同之处是什么

  如果没什么问题,把隐藏的代码修改合并到代码库里

    git stash apply stash@{0} 

  查看本地所有待提交、临时存放的修改

    git stash list

8.Git push遇到RPC failed问题

    可以参考以下解决方案,亲测有效:

     # 减小推送包大小

          git config --global pack.windowMemory 100m

          git config --global pack.packSizeLimit 100m
          git config --global http.postBuffer 52428800 # 50MB

    # 然后尝试分批推送

     git push origin main --all --force

    git push origin main --all --force-with-lease

         考虑到避免覆盖他人的工作,--force替换成--force-with-lease

    #推送后检查完整性:git fsck

9.构建和临时文件已提交到Git仓库,已标记跟踪这些文件,该如何取消

   注意:一次可能会遇到RPC 413错误,请求体过大导致请求失败,需分批或按文件/夹路径一部分一部分进行下面的操作

             RPC failed; HTTP 413 curl 22 The requested URL returned error: 413

   9.1 git rm -r --cached folder/filepath     停止跟踪这些文件或文件夹

         git rm -r --cached api/Azure_AI/Azure_AI/.vs

         或 git rm -r --cached  //一次性清除所有缓存

  9.2 git add 添加到暂存区

  9.3 git commit -m "备注说明"   提交

    9.4 git push 推送

10. Visual Studio 2022 git拉取代码 提示Recv failure: Connection was reset错误

      # 禁用压缩(有时能解决连接重置问题)

    git config --global http.https://xxx.disableCompression true xxx git地址

   如还不行可尝试:打开visual studio installer修复vs工具或更新vs工具,重启vs工具再尝试拉取git代码

11. 已经提交但未成功推送到远程仓库

      首先执行git log --oneline查看提交历史记录,只有一条提交记录和多条提交记录有区别。

      1)只有一条提交记录

          需执行这条语句撤销提交git update-ref -d HEAD    删除当前分支的 HEAD 引用(即删除那次提交)

     然后分批提交,比如按目录分批提交即可

   2)多条提交记录

      需执行 这条语句撤销提交,git reset --soft HEAD~1   撤销最近一次提交,但保留所有已暂存的更改(--soft)

      或者退到哪个版本,替换HEAD~1

      然后分批提交即可

12.创建孤立分支并切换到分支,优点:没有父提交和历史完全分离

   命令语句  git checkout --orphan <新分支名>   

   执行 git rm -rf 删除所有文件(准备重新开始)

   或执行 git clean -fdx 清空工作区内容,选择哪些内容需要上传

   查看孤立分支历史:git log --oneline <孤立分支名>

   推送到孤立分支:git push origin <孤立分支名>

 保留 README.md 和 LICENSE :git ls-files | grep -v -E "README\.md|LICENSE" | xargs git rm -f

 

posted on 2025-04-24 22:47  追求高级技术  阅读(10)  评论(0)    收藏  举报