0%

git命令

对于本地仓库

基本的提交

  1. 在vscode中,在项目目录下,通过ctrl + `</code>唤出本地终端
  2. git init 把该目录初始化为可以用git管理的仓库
  3. git add readme.md 把readme加到git缓冲中 要提交全部git add .
  4. git commit -m "wrote a file" 提交更改

其他功能

  1. git status 查看当前git状态
  2. git log 查看提交历史,以便确定回退的commit_id(git log --pretty=oneline 更简洁)
  3. git reset --hard commit_id 回退版本,commit_id不用打全
  4. git reflog 查看简洁的提交历史
  5. git checkout -- readme.md 丢弃工作区的更改
  6. git reset HEAD readme.md 把暂存区的更改撤销到工作区
  7. git rm readme.md 从库中删除文件
  8. git rm -r --cached .idea 删除后来加入gitignore但之前已经上传至仓库的.idea文件

分支管理

  1. git branch 查看分支
  2. git branch <name> 创建分支
  3. git checkout <name>git switch <name> 切换分支
  4. git checkout -b <name>git switch -c <name> 切换分支
  5. git merge <name> 合并某分支到当前分支
    • 遇到冲突时需要手动解决
  6. git branch -d <name> 删除分支
  7. git merge --no-ff -m "merge with no-ff" dev 禁用fast forward
  8. git log --graph 查看分支合并图

多人合作

  1. git remote -v 查看远程库信息
  2. git push origin <name> 推送分支的信息
  3. git checkout -b <name> origin/<name> 关联本地和远程分支
  4. git pull 从远程抓取分支

打tag

  1. git tag 列出当前标签,可带选项-l --list
  2. git tag -l "v1.8.5*" 仅列出1.8.5系列
  3. git tag -a v1.4 -m "my version 1.4" 打附注标签
  4. git tag v1.4-lw 打轻量标签
  5. git show + 标签名 可以查看标签信息
  6. git tag -a v1.2 9fceb02 给历史中的某个提交打标签
  7. git push origin v1.5 将tag推送到远程仓库
  8. git push origin --tags 将所有不在远程仓库的tag推送至远程仓库
  9. git tag -d v1.4-lw 删除标签,git push origin :refs/tags/v1.4-lw 删除远程仓库标签,git push origin --delete <tagname> 也可以删除远程仓库标签

对于Github的远程库

首先确认ssh有关联

  1. 在github新建仓库后出现如下画面

    1592496678625

  2. git remote add origin git@github.com:Shengqi-Pan/test.git 将本地仓库与github关联

  3. git push -u origin master 第一次,之后似乎不用加-u

  4. git clone git@github.com:michaelliao/******.git clone到本地

参考

  1. https://git-scm.com/book/zh/v2
  2. 廖雪峰的网站