git笔记

git项目区域

  • 工作区: 即个人克隆项目到本地后,项目所在的文件夹目录
  • 暂存区: 用于储存工作区中的变更(增删改等改动)的文件的地方.操作时使用 git add 会将本地所有的变更提交到暂存区中
  • 本地仓库: 用于储存工作区和暂存区中提交上来的文件, 使用 git commit -m ‘提交内容的描述’
  • 远程仓库: 将本地仓库的修改提交到远程, 使用 git push origin 远程分支名

工作区 --git add–> 暂存区 – git commit --> 本地仓库 – git push --> 远程仓库

git 基础

  • git init (name) 创建仓库
  • git clone (url) 克隆仓库到本地
  • git status 查看当前git状态信息(查看是否有文件未提交)
  • git log 查看提交记录

git 分支

  • git branch [branchname] 创建分支
  • git checkout [branchname] 切换分支
  • git checkout -b [branchname] 创建并切换分支
  • git branch 分支列表 (默认本地分支 -r远程 -a本地和远程 )
  • git branch -d [branchname] 删除分支
  • git branch -m [oldbranch] [newbranch] 重命名本地分支

git配置信息

  • git config -l 查看git的配置信息
  • git config user.name ‘Lee’ git配置本地仓库的userName
  • git config user.email ‘12345@qq.com’ git配置本地仓库的邮箱
  • git config --golbal -l 查看全局git配置信息

拉取代码

  • git fetch 远程主机的最新内容拉到本地,需要手动合并代码到本地
  • git pull 远程仓库同步到本地仓库,拉取并合并代码到本地,即git pull = git fetch + git merge

本地提交到git索引(缓存)中

  • git add . #把新增的、修改的都加到缓存

  • git add -A #把新增、和修改的、和删除的都加到缓存

  • git rm 删除缓存和本地的文件

  • git rm --cahced 只删除缓存的文件

commit代码到本地分支

  • git commit -m “修改说明” #提交到本地仓库
  • git commit -am ‘修改说明’ #添加文件并完成提交到本地仓库

push到远程分支

  • git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名>
  • git push 提交当前分支到远程
  • git push origin 将当前分支推送到origin主机的对应分支
  • git push -f 强制提交,以本地分支的内容覆盖远程

git reset 撤销

作用:提交内容撤回到commit_id

  • git reset --soft [commit_id] 修改内容撤回暂存区。
  • git reset --mixed [commit_id] (默认) 修改内容撤回到工作区。
  • git reset --hard [commit_id] 放弃所有修改内容
git tag 打标签

作用:表示重要的提交快照,不可修改

  • 创建轻量标签: git tag [tagName] -m “消息内容”
  • 创建附注标签(-a, 会记录-人/时间/邮件/commit): git tag -a [tagName] -m “消息内容”
  • 给某次commit打标签: git tag -a [tagName] commit_id
  • 推送远端: git push origin [tagName]
  • 本地删除标签: git tag -d [tagName]
  • 远端删除标签: git push origin :refs/tags/[tagName]
  • 切换tag: git checkout [tagName]
  • 查看标签内容: git show [tagName]
git stash 缓存

作用:将修改内容保存到本地缓存中

  • git stash save “save message” 执行存储时,添加备注
  • git stash list 查看stash了哪些存储列表
  • git stash apply [num] 使用某个下标的缓存
  • git stash drop [num] 删除某个下标的缓存
  • git stash clear 删除所有缓存的stash
git cherry-pick

作用:将其他分支某次提交记录pick合并到当前分支

git cherry-pick commit_id1 commit_id2
git merge

作用:将一个分支的修改记录合并到另一条分支

git merge <branchname>
git rebase

操作commit记录(编辑,删除,合并,复制,粘贴)

命令

 pick:保留该commit(缩写:p)
 reword:保留该commit,但我需要修改该commit的注释(缩写:r)
 edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
 squash:将该commit和前一个commit合并(缩写:s)
 fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)
 exec:执行shell命令(缩写:x)
 drop:我要丢弃该commit(缩写:d)
#### git 删除中间某次commit
- 找出删除commit的前一次的commit_id: git log
- 找出提交记录并进入vim状态: git rebase -i commit_id 
- 将错误的commit 的 pick 改为 drop
- 退出编辑: esc, :wq
- 提交到远程:git push -f 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值