当前位置:   article > 正文

vscode打开有一大堆git未跟踪怎么办_Git常用操作简洁整理

vscode打开有一大堆git未跟踪怎么办

fe3eaca1ef15fd5e6bcda33d32bd6863.png

0 使用 git 前准备

1 初始代码包上传(针对一个项目的代码)

2 远程克隆代码

3 如何删除远程存储库Repositories内的文件

4 本地修改或增加文件后同步至远端

5 远端修改或增加文件后同步至本地

6 撤销操作

7 修改提交 Git reset复位(三个选项)

8 Git HEAD 游离的解决办法

9 分支操作

10 使用标签

11 Git标准注解


0 使用 git 前准备

0.1 注册Github账户

0.2 创建 Repositories,新建仓库可勾选 initialize this repository with a README

0.3 安装Git工具,分windows和lunux系统

0.4 配置Git环境,打开终端输入如下命令,3次回车生成密钥文件,找到后与github端绑定

ssh-keygen -t rsa -C "79225****@qq.com"

0.5 验证配置是否成功

ssh -T git@github.com

此处可能会出现如下错误,直接输入yes回车即可

  1. The authenticity of host 'github.com (52.74.223.119)' can't be established.
  2. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
  3. Are you sure you want to continue connecting (yes/no)?

0.6 配置身份标识用户名和密码

  1. git config --global user.name "userName"
  2. git config --global user.email "79225****@qq.com"

1 初始代码包上传(针对一个项目的代码)

1.1 建立文件目录

途径1:推荐方法是在远端github新建Repositories,然后clone到本地

途径2:本地建立工作目录,和远程Repositories同名,然后执行 $ git init,添加远程仓库管理,代码如下

git remote add origin git@github.com:userName/仓库名.git

1.2 对工作目录内的文件增删、修订之后

  1. git add . 或者 $ git add <某个文件>
  2. git commit -m "提交信息"
  3. git status 可多次使用查看状态; $ git log 查看提交记录
  4. git push git@github.com:用户名/仓库名.git

1.3 注意:如果使用途径2新建的可能push没效果,因为远端仓库有别的文件,此时运行

git push --all -f

进行强制覆盖至此,就可在远端github仓库看到上传的文件了

2 远程克隆代码

2.1 运行如下命令

git clone git@github.com:lochinasc1017/文件夹名.git

地址协议除了HTTP(s)以外,还支持SSH、Git、本地文件协议等

2.2 克隆的代码也有提交记录等信息

2.3 如果远程代码有更新,为了是本地与远程一致,编辑代码前可以执行拉去操作

git pull

3 如何删除远程存储库Repositories内的文件

3.1 首先从远程仓库把代码同步下来

一种方法使用 git clone

另一种如果远端文件更改了,就 git pull 来更新本地文件, 分支如果没跟踪就设置跟踪

git branch --set-upstream master(本地分支) origin/master(远端分支)

3.2 手动删除本地目录内的文件

  1. git add .
  2. git commit -m "提交信息"
  3. git push <远程主机名> <远程分支名>或者Repositories的SSH地址

4 本地修改或增加文件后同步至远端

本地操作包括:修改文件内容、新建文件、新增含文件的文件夹

  1. git add .
  2. git commit -m "提交信息"
  3. git push

5 远端修改或增加文件后同步至本地

远端操作包括:修改文件、添加文件、添加文件夹

git pull

6 撤销操作

6.1 本地修改且未添加到暂存区的恢复

git checkout <修改文件名>

注:使用提交的记录进行恢复,也可恢复工作树中删除的文件

6.2 本地修改且已添加到暂存区的恢复

git checkout head -- string.py(恢复的文件名)

6.3 恢复至某一次提交(本方法不推荐)

git checkout <commit ID>

注意这种操作会把HEAD指针移到上面的ID 提交上,容易使HEAD游离,要慎重使用

7 修改提交 Git reset复位(三个选项)

  1. git reset --soft <commit ID> 仅移动HEAD指针位置,移动之后HEAD原来指向的提交ID还在,用于只取消提交
  2. git reset --mixed <commit ID> 移动HEAD位置,索引被修改,用于取消修改过的索引
  3. git reset --hard <commit ID> HEAD位置、索引、工作树均被修改,用于彻底取消提交
  4. git reset --hard HEAD~(以ID相对位置更改提交) HEAD~表示HEAD的前一次提交

上述三个操作不太熟悉,图解示意图见OneNote笔记

8 Git HEAD 游离的解决办法

Git reset 复位指针时,容易出现指针游离,比如 $ git checkout < commit id>,即切换到指定的某一次提交,HEAD 就会处于 detached(游离状态)

优点:HEAD 处于游离状态时,我们可以很方便地在历史版本之间互相切换,比如需要回到某次提交,直接 checkout 对应的 commit id 或者 tag 名即可

缺点:在这个基础上的提交会新开一个匿名分支,也就是说我们的提交是无法可见保存的

解决办法:新建一个分支保存游离状态后的提交

  1. git branch -v # 查看当前领先多少
  2. git branch temp # 新建temp分支
  3. git checkout temp #把当前代码放到新建分支
  4. git status
  5. git checkout master #回到原来的分支
  6. git merge temp #合并分支
  7. git status
  8. git diff # 如果有冲突,就修改源文件,然后再add和commit
  9. git branch -d temp # 删除临时新建的分支

9 分支操作

将当前工作add和commit

  1. git branch <branchname> # 新建分支
  2. git checkout <branch> # 切换分支,在本分支提交,历史记录会记录在本分支
  3. git checkout master # 切换到 master 分支
  4. git merge <待合并的分支> # 合并
  5. git branch -d <分支名> # 删除不用的分支

并行操作

  1. 建立分支2和分支3并分别在相应的分支修改、addcommit
  2. 切换到master分支,合并分支2, fast-forward模式合并
  3. 合并分支3会出现冲突,因为与分支2在同一行进行了修改
  4. git diff # 在冲突的地方,生成了内容的差异,然后去文件里修改
  5. 执行 addcommit # 这也完成了合并,这种手动更改的合并成为non fast-forward

10 使用标签

  1. git tag -a 'Release_1_0' -m 'Tagged basic string operation code' HEAD # 标记当前HEAD指针,如果要标记特定提交,则使用相应的 <commit ID>
  2. git push origin tag Release_1_0 # 推送到远程 Repositories
  3. git tag -l # 查看标签
  4. git show <tagname> # 显示更详细的标签信息
  5. git tag -d <tagname> # 删除标签,标签名比如 Release_1_0

11 Git标准注解

第1行 提交修改内容的摘要

第二行 空行

第三行以后 修改的理由

一份易上手的教程: Git教程

子模块使用-参考链接

git中submodule子模块的添加、使用和删除_开发工具_guotianqing的博客-CSDN博客​blog.csdn.net
d5549bef763a59eb62a45e8bdc7ff227.png

未完待续。。。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/952240
推荐阅读
相关标签
  

闽ICP备14008679号