git安装,配置和使用

Posted 4645

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git安装,配置和使用相关的知识,希望对你有一定的参考价值。

基础操作

  • 需要一个文件夹作为版本库
  • 建立仓库git init
  • 添加文件git add filename
  • 提交文件git commit -m "info"
  • 查看日志git log//—pretty=oneline

版本控制

  • 版本回退git reset —hard HEAD^
    HEAD^:上一个版本 HEAD~100:100个版本之前 commit_id:回退到该ID对应版本
  • 查看命令日志git reflog
  • 查看状态git status
  • 比较不同git diff HEAD — readme.txt
  • 撤销/丢弃在工作区的修改git checkout -- <file>
    ps: 如果没有放到缓存区,就回退到和版本库一样,如果放到了缓存区,回退到缓存区
  • 把缓存区文件放回工作区git reset HEAD <file>
  • 从版本库中删除该文件,那就用命令git rm删掉,并且提交git commit -m "delete a file"
  • 删错恢复git checkout — test.txt

推送到远程仓库

  • 关联远程仓库git remote add origin git@github.com:server-name:path/repo-name.git
  • 把本地库的当前master分支内容推到远程git push -u origin master
  • 本地提交后,推送到远程githubgit push origin master

从远程库克隆

git clone git@github.com:username/repo-name.git

本地库分支管理

  • 查看分支:git branch
  • 创建分支:git branch <name>
  • 切换分支:git checkout <name>
  • 创建+切换分支:git checkout -b <name>
  • 合并某分支到当前分支:git merge <name>
  • 删除分支:git branch -d <name>
    强行删除一个没有被合并过的分支:git branch -D <name>
  • 分支可视化:
  • git log --graph显示分支合并图
  • git log --graph --pretty=oneline --abbrev-commit更简略
  • 合并分支时:
  • 加上--no-ff参数用普通模式合并,合并后的历史有分支,能看出来曾经做过合并
  • 加上fast forward看不出来曾经做过合并,历史分支会被丢弃
  • 保存工作现场:把工作现场git stash,离开,再git stash pop,回到工作现场
  • 查看工作现场:git stash list

远程库分支管理

  • 查看远程库信息:git remote -v
  • 从本地推送分支:git push origin branch-name
    如果推送失败,先用git pull更新版本
  • 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name(本地和远程分支的名称最好一致)
  • 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name
  • 从远程抓取分支:git pull,如果有冲突,要先处理冲突。

使用标签

  • 新建标签:git tag <name>,默认为HEAD,也可以指定一个commit id;
  • 制定标签信息:git tag -a <tagname> -m "blablabla..."
  • 用PGP签名标签:git tag -s <tagname> -m "blablabla..."
  • 查看所有标签:git tag
  • 推送一个本地标签:git push origin <tagname>
  • 推送全部未推送过的本地标签:git push origin --tags
  • 删除一个本地标签:git tag -d <tagname>
  • 删除一个远程标签:git push origin :refs/tags/<tagname>

配置需要忽略的文件

  • 忽略某些文件时,需要编写.gitignore文件
  • .gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理

配置别名(分支表示着色)

git config --global alias.lg "log --color --graph --pretty=format:\'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset\' --abbrev-commit” Git lg

git的配置文件

  • 配置Git的时候,加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。
  • 每个仓库的Git配置文件:.git/config文件中
  • 当前用户的Git配置文件:用户主目录下的一个隐藏文件.gitconfig

以上是关于git安装,配置和使用的主要内容,如果未能解决你的问题,请参考以下文章

使用 Git 来管理 Xcode 中的代码片段

Ubuntu系统如何安装和配置Git

Git的安装和使用以及VScode配置Git的快速使用

webstorm 配置 开发微信小程序

#VSCode保存插件配置并使用 gist 管理代码片段

VSCode自定义代码片段——git命令操作一个完整流程