开始一个新的项目
初始化
添加remote
1
| git remote origin add <url>
|
添加文件
提交
同步
1
| git push -u origin <branchName>
|
1
| git pull origin <branchName>
|
查看日志和状态
删除文件
1
2
| git rm fileName
git rm -r filedir
|
1
2
| git rm --cached fielname
git rm --cached -r filedir
|
1
| git restore --staged fielname
|
恢复文件
1
2
3
| - 执行了git rm 未commit
git reset HEAD
git restore <file|dir>
|
分支
查看分支
后面没有接任何参数,它仅会输出当前在这个项目中有哪些分支。Git默认会设置一个名为master的分支,前面的星号(*)表示现在正在这个分支上。
新增分支
改分支名
1
| git branch -m 老分支名 新分支名
|
删除分支
若被删除的分支还有未被合并的内容,会有提示,无法删除,此时需要使用-D强行删除
切换分支
| 切换分支之前,首先得查看当前分支状态,看看有无未更改的提交,若不想提交,则需贮藏修改
恢复已被删除的分支
已合并的分支随意删除
未合并的分支若被删除
- 使用
git reflog 删前的版本号,reflog 保留30天记录 - 使用
git branch branchName version 老创建新的分支恢复
合并
概念 在A上合并B, A为当前分支,B为被合并分支
merge 合并 git merge B
- master 主分支其余分支,使用快转模式直接合并
- 子分支合并子分支,会产生一次新的commit来处理
rebase 合并 git rebase B
合并冲突
文本冲突
- 编辑冲突文件,确认到底保留哪方的内容
- 然后 add → commit 操作
非文本冲突
- 保留当前分支文件
git checkout --ours 文件名 - 保留被合并分支文件
git checkout --theirs 文件名 - 然后 add → commit 操作
贮藏
有时,当你在项目的一部分上已经工作一段时间后,所有东西都进入了混乱的状态, 而这时你想要切换到另一个分支做一点别的事情。 问题是,你不想仅仅因为过会儿回到这一点而为做了一半的工作创建一次提交。 针对这个问题的答案是 git stash 命令。
创建贮藏
前提,被贮藏文件是被 暂存(add)的
1
| git stash push filename
|
查看贮藏的东西
恢复贮藏
1
| git stash apply stash@{2}
|
删除贮藏
1
| git stash drop stash@{2}
|
1
| git stash pop stash@{2}
|
其余贮藏相关操作详见 链接