VScode中使用git进行版本控制

  • 一、安装与配置
  • 二、初始化和提交本地仓库
  • 三、提交到远程仓库
  • 四、克隆和拉取
  • 1. 克隆
  • 2. 拉取
  • 五、修改后的提交
  • 六、免密提交
  • 七、其他命令
  • 1. 撤销
  • 2. Git 分支命令
  • 3. 暂时保存更改
  • 4. 同时提交多个仓库


一、安装与配置

  • 安装命令
sudo apt-get install git
  • 查看版本
git --version
  • 配置提交人姓名:
git config --global user.name 提交人姓名
  • 配置提交人邮箱:
git config --global user.email 提交人邮箱
  • 查看git配置信息:
git config --list

vscode关闭git仓库后重新添加项目 git列表没有了_github

二、初始化和提交本地仓库

  1. 进入目标文件夹
cd /home/ied/vue/03_vuecli
  1. 初始化git仓库:
git init

vscode关闭git仓库后重新添加项目 git列表没有了_git免密_02

  1. 查看文件状态:
git status
  1. 追踪文件,跟踪所有文件git add .
git add 文件列表

vscode关闭git仓库后重新添加项目 git列表没有了_git免密_03

  1. 向本地仓库中提交代码:
git commit -m 提交信息

vscode关闭git仓库后重新添加项目 git列表没有了_远程仓库_04

  1. 查看提交记录:
git log

三、提交到远程仓库

  1. 查看分支:
git branch
  1. 给远程仓库取个简单的别名(常用第一步骤):git remote add 远程仓库地址别名 远程仓库地址。例:
git remote add 名字 https://地址
  1. 让git记住地址与分支(-u 记住推送地址与分支,下次推送只需要输入 git push 即可)(常用第二步骤):git push -u 远程仓库地址别名 分支名称
# 第一次提交
git push -u 名字 分支
# 以后提交
git push 名字 分支
  1. 这时候会让输入账户和密码,输入后传输完成。

四、克隆和拉取

1. 克隆

  1. 克隆远程仓库到本地(本地没有该仓库):git clone 仓库地址。例:
git clone https://地址

2. 拉取

拉取方式有两种,一种是 pull,拉取仓库到本地会直接覆盖原有代码。一种是 fetch-merge,拉取的时候会先保存在分支中,以供对比,确认覆盖才会覆盖原有代码。
fetch 比 pull 更安全

  1. pull
    拉取远程仓库中的最新版本(本地有该仓库):git pull 仓库别名 分支名称
git pull 别名 分支
  1. fetch-merge
    拉取远程仓库中的最新版本(本地有该仓库):git fetch 仓库别名 分支名称 拉取到本地的分支中后,进行对比:git log -p FETCH_HEADgit log -p 仓库别名/分支名称 对比完后确认覆盖:git merge FETCH_HEADgit merge 仓库别名/分支名称
git fetch 别名 分支
git log -p 仓库别名/分支名称
git merge 仓库别名/分支名称

vsc 可以用过 GUI 操作。

vscode关闭git仓库后重新添加项目 git列表没有了_github_05

五、修改后的提交

  1. 当我们修改了一个文件,右侧的 git 会提示有1个文件未跟踪。
  2. 点击加号添加跟踪文件,然后点击 √ 提交文件。
  3. 提交文件的时候会要求输入提交信息,随便输一个就可以。
  4. 点击左侧同步更改,然后输入用户密码。

六、免密提交

  1. 在本地,创建 ssh 密钥文件
  2. 复制公钥到 github 或 gitee 上
  3. 测试,出现 successfully 就说明成功。
ssh -T git@gitee.com

vscode关闭git仓库后重新添加项目 git列表没有了_github_06

  1. 修改远程库指向为 ssh 方式
# 查看关连远程库
git remote -v

# 删除
git remote rm cli

# 添加 ssh 方式
git remote add cli git@gitee.com:地址

vscode关闭git仓库后重新添加项目 git列表没有了_github_07

  1. 现在提交或拉取就不需要再输入密码了

七、其他命令

1. 撤销

  • 用暂存区中的文件覆盖工作目录中的文件:
git checkout 文件名
  • 将文件从暂存区中删除:
git rm --cached 文件名
  • 将git仓库中指定的更新记录恢复出来,并且覆盖暂存区和工作目录:
git reset --hard commitID

vscode关闭git仓库后重新添加项目 git列表没有了_git免密_08

2. Git 分支命令

主分支(master):第一次向 git 仓库中提交更新记录是自动产生的一个分支。
开发分支(develop):作为开发的分支,基于 master 分支创建。
功能分支(feature):作为开发具体功能的分支,基于开发分支创建。

  • 查看分支:
git branch
  • 创建分支:
git branch 分支名称
  • 切换分支:
git checkout 分支名称
  • 合并分支:
git merge 来源分支
  • 删除分支(分支被合并后才允许删除)(-D 强制删除):
git branch -d 分支名称

3. 暂时保存更改

  • 存储临时改动:
git stash
  • 恢复改动:
git stash pop

4. 同时提交多个仓库

需求是同时提交到 gitee 和 github,但是只从 gitee 拉取。

git remote set-url --push --add 仓库地址1
git remote set-url --push --add 仓库地址2
git remote set-url --push --add ...

然后查看本地仓库 .git/config,默认只从 gitee 拉取。

vscode关闭git仓库后重新添加项目 git列表没有了_git免密_09