git管理文件夹
# 创建文件夹,进入该文件夹,打开git bash
git init # 初始化,生成.git文件,让git来管理该文件夹
git status # 检测当前目录下文件状态
git add 文件名 # 将指定文件放入暂存区
git rm --cached -r . # 移除暂存区的所有文件,-r表递归删除文件夹
git commit -m "描述信息" # 提交生成版本
git log # 查看版本记录
git log --graph # 图查看
git log --graph --pretty=format:"%h %s" # 图查看且只显示哈希值和记录
回滚
# 回滚到之前版本
git log # 查看版本记录,找到要回滚版本号
git reset --hard 版本号 # 回滚之前版本
# 再回滚
git reflog # 查看引用日志,找到要回滚版本号
git reset --hard 版本号 # 回滚之后版本
分支
git branch # 查看现有分支
git branch dev # 创建dev分支
git branch -b 分支 # 创建并切换到该分支
git branch -d bug # 删除bug分支
git branch -M main # 将当前分支重命名为main(github会用到)
git checkout dev # 切换到dev分支,开发c4
git checkout -b 分支 # 创建并切换到该分支
git merge bug # 合并bug分支(此时应该在master分支上)
推送 & 克隆、拉取
推送
git remote add origin 远程仓库地址 # 给远程仓库起个别名origin(也相当于绑定一个远程仓库)
git remote remove origin # 移除origin
git push -u origin 分支 # 是将本地master分支的内容推送到名为origin的远程仓库的master分支上
# -u参数解释:加-u参数执行过一次后,表示以后默认将代码推送到origin的该分支上
git push origin 分支 # 将该分支推送到远程仓库
克隆、拉取
git clone 远程仓库地址 # 克隆远程仓库代码
git pull origin 分支 # 将远程仓库(名为 origin 的仓库)中分支的最新更改拉取到本地,并尝试将这些更改合并到本地的该分支上
# 拉取分支(不需每次都克隆,克隆一次就行,后续拉取)
相当于
git fetch origin dev + git merge origin/dev
注意
- 克隆时内部已经实现
git remote add origin 远程仓库地址
,可以直接用origin,不用每次再起别名。- - 克隆会将所有分支拉到本地,虽然不显示,但可以切换:git checkout 分支
- 推送可拉取一次只操作一个分支
图