title: git和github进行代码管理(Mac电脑)
tags: Git
categories:
代码管理的区域(自用github和码云作为远程仓库)
Wrokspace: 工作目录/工作区(本地创建的,用于存放代码的文件夹)
Stage:暂存区(.git文件夹)
Repository: 本地仓库
Remote: 远程仓库(github或码云)
git流程图
<img src="../img/git流程图.png">
git是什么?
git是一种版本控制工具
github是什么?
github相当于是代码管理的远程仓库
版本控制工具
- 管理源代码(方便团队成员相互协作开发)
- 代码的合并:保存所有的历史记录
git和github的使用
本地操作
一、基本操作
- 配置用户信息
git config --global user.name github用户名
git config --global user.email github邮箱 - 新建一个Git代码库/初始化本地仓库
git init
-> 此时会在工作目录生成.git 文件,但是Mac电脑默认是隐藏的 - 查看仓库中所有文件的文件状态
git status - 把工作目录中的文件添加到暂存区
git add *
-> 将工作目录中的所有文件都添加到暂存区
git add 文件列表
-> 添加制定文件到暂存区
-> git rm --cached 文件名称 #add的逆操作 - 把暂存区的文件添加到本地仓库
git commit -m '备注信息'
git commit -a -m 备注信息 #(-a只能提交已修改的文件,不能提交未跟踪文件)
-> git log 可以查看commit的日志,查看提交历史
-> 至此,本地的文件的基本管理已经结束二、分支
git branch #查看本地所有分支
git branch -a #查看所有的分支,包括远程分支
git branch -r #查看远程所有分支
git branch 分支名称 #创建分支
-> git checkout -b 分支名称 #也可用于创建分支,创建并切换到当前创建的分支
git checkout 分支名称 #切换到指定分支
git merge 分支名称 #合并指定分支到当前分支
git branch -d 分支名称 #删除分支,如果没有被合并,无法删除
git branch -D #强行删除分支,请慎重
git push origin 分支名称 #推送本地分支至远程仓库,创建远程分支
git push origin --delete 分支名称 #删除远程分支
三、撤销(回滚)
git checkout 文件列表 #回滚修改的内容v
git checkout . #(回滚所有的修改,慎重使用)
- 使用本地仓库的快照进行回滚
- git reset
- --hard
- --soft
- --mixed (默认参数)
git reset --hard HEAD^ #回滚最后一次提交
git reset --hard HEAD #回滚所有的工作目录和暂存区内容
- git reset
四、删除
远程仓库的相关操作
- 克隆远程仓库的项目
- git clone 远程仓库地址 项目名称
- 拉取远程的分支
- git pull 远程仓库地址 远程分支名称:本地分支名称
- 推送分支到远程仓库
- git push 远程仓库地址 本地分支名称:远程分支名称
- 添加远程仓库别名
- git remote add 别名 远程仓库地址
- 删除远程仓库别名
- git remote remove 别名
- 查看远程仓库别名的详细信息
- git remote show 别名
- 查看所有别名
- git remote