(原创)git操作指令(一)
文章目录
引言
此教程为打通git操作的瓶颈,在实际开发中会高频使用的指令和解决特殊情况的会出现的问题。
正式开始
基础使用
创建仓库,这会在本地新建.git文件夹,里面存放有git仓库的配置项。
git init
如果这是空仓库(没提交过)
你需要先做一次初始提交,提交到缓冲区
git add .
git commit -m "initial commit"
然后创建并推送 develop 分支:(可选)
git checkout -b develop
最后推送到远程
git push -u origin develop
如果出现无法找到远程仓库的话。
你可以直接添加远程仓库,gitee,gitlab或者github的url都行。
git remote add origin http://your_github_url.git
进阶使用
你可能会遇到这样的情况:你写了一段时间的代码,做了提交,但是突然发现之前提交到远程的某段代码出问题了,需要更新远程仓库,直接提交会报错。
此时你需要强制提交
有两种方式强制远程代码与本地同步
git push origin 分支名 -f
git push origin 分支名 --force-with-lease
他们的区别是: 强制推送命令 lease 是"带刹车的强推";无刹车的 -f 除非单人项目,否则别手滑。这确实是不安全的的,尽量不要这么做,可能会把开发环境弄坏,谨慎考虑。如果上述指令还是报错,这是预料之中的情况,你需要把本地暂存区的旧代码删除,再把工作区的旧代码删除。
git rm -rf .
git add .
git commit "this is new change"
git push origin 分支名 --force-with-lease
git rm -rf .把文件从"暂存区+工作区"同时删掉,不会动提交历史;
只有下一次 commit 才把"删除"记录成新快照。
你还可能会遇到这种情况:你创建了多个项目分支,现在想要删除一些没用的分支。现在你需要删除本地分支,然后再删除远程分支。
删除本地分支
git branch -d 分支名 # 安全模式:有未合并内容会拒绝
git branch -D 分支名 # 强制删除,不管是否已合并
删除远程分支(GitLab/Gitee/GitHub 通用)
git push origin --delete 分支名
结语
这是第一期git指令教程,后面会持续更新。