git 可理解为有三个区:本地 暂存区 远程仓库
- git add . 将代码提交至暂存区,git则开始追踪文件变化
- git commit -m xxx 将暂存区代码提交至远程仓库
- git status 查看当前项目哪些有改动的
- git log 查看所有人提交的日志
- git log --author='git账号名' 查看某个人的提交日志
- git config --global user.name 'xxx' 配置用户名
- git config --global user.email 'xxx' 配置邮箱
- git config --global --list 查看配置的用户名和邮箱
- modified 内容红色是未添加到暂存区,add . 到暂存区后会变成绿色
- git rm index.html 删除文件
- git mv index.html main.html 给文件重命名
- git mv main.html src 移动文件至指定目录
- git mv main.html src/index.html 移动文件到指定文件夹并重命名
- git log --pretty=oneline src/index.html 查看文件前后变化
- git show 2bac7f619b1b00348 查看文件具体提交日志
- git log -p src/main.html 查看文件具体变化内容,包括代码
- git diff 查看不同
- git checkout -- src/main.html 代码未add提交到暂存区前代码回滚
- 代码add提交到暂存区后代码回滚:
git reset HEAD src/main.html(撤销git代码追踪)
git checkout -- src/main.html ok - git reset --hard HEAD^ 将项目回退上一个版本
- git reset --hard 6bba11a 根据ID 将项目回退到指定版本
- git checkout 3659d43921fd1e6 -- src/index.html git 将某个文件回退到指定版本
- 推送到远程仓库
git add
git commit -m xxx
git log
git push origin master (推送到master分支) - git tag v1.0 创建标签,默认添加到最新的一次提交上
- git tag v2.0 11f789d94d3f 为指定版本创建标签
- git tag -d v2.0 删除标签
- git push origin v1.0 将标签推送到远程仓库
- git branch 查看所有分支
- 创建/切换/删除分支
git branch dev(创建dev分支)
git checkout dev(切换到dev分支)
git branch -d dev(删除分支,不能删除当前分支) - git checkout -b dev 创建dev分支并且跳转到dev(相当于复制一份主干的代码给分支)
- git branch -d dev弱删除,有提交过的不能删除(不能删除当前分支);
git branch -D dev强删除,有提交过的也能删除(不能删除当前分支) - 分支合并代码到主干
git checkout master 先切换到主干
git merge dev 将dev分支合并到主干 - 合并分支有冲突时
git merge --abort 忽略其他分支的冲突,使用当前分支的代码 - git fetch 拉取所有的远程仓库
- git branch -av 查看所有本地分支及远程分支
- git push origin --delete test 删除远程分支
- git merge origin/dev 合并远程仓库分支代码
- git checkout -b test remotes/origin/test 将远程分支与本地分支关联
- 拉取远程分支到本地
git checkout -b 本地分支名 origin/远程分支名
网友评论