git介绍

Git 基础介绍

官方文档链接: https://git-scm.com/book/zh/v2
我们通过git来进行版本控制( 本地版本控制、集中化的版本控制、分布式版本控制)

git文件状态

在git中文件有如下状态
1.已提交(committed):数据已经安全的保存在本地数据库中。
2.已修改(modified):修改了文件,但还没保存到数据库中。
3.已暂存(staged):对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
4.未跟踪(untracked):一个为跟踪文件不会被commit
下图展示了四种状态的转化

在这里插入图片描述

git仓库

git工作区域分本地和远程仓库。

在本地操作时又有区分:
–Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。
–Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内。
–Repository(本地仓库):提交到本地仓库的文件。

Git命令

常用命令

  • git add {file name} 开始跟踪新文件、把已跟踪的文件放到暂存区、合并时把有冲突的文件标记为已解决状态
  • git commit [-m “commit message”] 把暂存区的全部文件作为一次提交
  • git push [–force] 提交到远程仓库 (–force 时会强制覆盖远程仓库)
  • git pull 获取同步远程分支(此操作=git fetch + git merge)
  • git status [-s] 查看文件状态
  • git ignore {file name} 提交时忽略此文件
  • git cheakout {branch name} 切换分支
  • git cheakout -b {new branch name} [existing branch] 根据{指定|当前}创建新分支
  • git reset [–soft|–hard|–mixed] {commit id|HEAD~%n} 切换节点

分支、远程仓库操作命令

  • git delete -b [branch name] 删除本地分支
  • git push origin --delete {branch name} 删除远程分支
  • git push origin --delete tag {tag name} 删除远程标签
  • git branch [branch name>]创建本地分支 在当前所在版本对象创建一个指针
  • git reset --hard HEAD~1
  • git branch [-a] 查看分支
  • git merge [branch name] {-m “merge message”} {–no-commit} 将指定分支合并到当前分支

其他命令

  • git reflog 显示HEAD日志
  • git log {–pretty=format:’%h %s’ --graph} 查询提交日志
  • git config {–global|–local ${key} ${value} } 变量设置
  • git push --set-upstream origin [branch name] 设置远程仓库地址

常见问题解决

冲突解决

git pull冲突 (冲突文件未提交)

  1. git stash 先将本地修改存储起来
  2. git pull 暂存了本地修改之后,就可以pull了
  3. git stash pop 还原暂存的内容
  4. 解决冲突文件后提交

git pull冲突 (冲突文件已提交)

  1. git fetch
  2. git merge 对应的远程分支
  3. 修改冲突后 commit&push
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值