企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] ### git操作流程 基础命令 ``` git init //初始化,把目录变成仓库 git add fileName //把文件添加到暂存区预备上传 git commit -m 'infor' //把暂存区的文件提交到当前分支 并且添加上传说明比如'add 2 files' git status //查看仓库当前状态会告诉我什么文件被修改了 git diff //顾名思义就是查看每次修改的difference只是提交前修改的 git log //查看历史记录 git reset --hard HEAD~版本号 //回退版本 HEAD指向当前版本 //如果不写 HEAD就可以在版本里历史中穿梭(可能会出现退出不了的情况这个时候按q) git reflog //可以查看每一次命令记录(可以查看版本号) git reset --hard 版本号 //退回到一个版本(利用版本号) git checkout -- fileName //可以把暂存区的内容会退到上一次add操作的内容或者上一次commit之后的内容 ``` ### 工作区和版本区 工作区指的是代码区,版本库指的是.git目录 git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。`git commit`只负责把暂存区的修改提交了。 ### 分支管理 ``` git branch //查看分支 git checkout -b name //创建分支并切换 -b表示创建并切换相当于下面两条命令 git branch name //创建分支 git checkout name //切换到分支(常用) git merge name //合并dev分支到master上 git branch -d name //删除dev分支(-D为强制删除分支,有时候分支没有合并就要被删除 这个时候用) git merge --no-ff -m "info" name //合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。 ``` ### 多人协作 ``` git remote //查看远程库的信息 git remote -v //查看更详细的信息 git push origin master //把master主线推送到origin远程库中当然也可以推送其他分支 git clone 仓库地址 //可以将远程库克隆到本地 //克隆到本地的内容默认情况下只能看到masetr分支 git checkout -b dev origin/dev //就可以创建远端origin的dev分支到本地 //当git的push操作出现问题,就是出现冲突的时候 git pull //先把最新的提交从origin/dev 抓取下来,然后本地合并,解决冲突,再推送 git branch --set-upstream 本地分支名 远端库名/远端分支名 //上面的操作时将远端库的分支与本地建立联系 ``` ### 推送本地 ``` git init // 初始化版本库 git add . // 添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件 git commit -m "first commit" // 把添加的文件提交到版本库,并填写提交备注 git rm -r -f --cached ./ //删除缓存 ``` ### 推送到远程仓库 ``` git remote add origin 你的远程库地址 // 把本地库与远程库关联 git push -u origin master // 第一次推送时 git push origin master // 第一次推送后,直接使用该命令即可推送修改 ``` ### 预览将要删除的文件 ``` git rm -r -n --cached 文件/文件夹名称 加上 -n 这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。 确定无误后删除文件 git rm -r --cached 文件/文件夹名称 提交到本地并推送到远程服务器 git commit -m "提交说明" git push origin master 修改本地 .gitignore 文件 并提交 git commit -m "提交说明" git push origin master ``` ### 删除 一些 没有 git add 的 文件 ``` $ git clean -d -fx git clean 参数 -n 显示将要删除的文件和目录; -x -----删除忽略文件已经对git来说不识别的文件 -d -----删除未被添加到git的路径中的文件 -f -----强制运行 git clean -n git clean -df git clean -f ``` ### # Git Clone命令直接使用用户名密码Clone 代码格式如下: ``` git clone http://userName:password@链接 ``` 示例: git clone https://username:password@git.oschina.net/wdm/familycloud.git ### phpstorm上git操作哦 a:在我们的项目上,右击,如图所示,相当于 git add ,这个大家都懂。 ![](https://box.kancloud.cn/0ed3afdadceac4b8fe45169cb02cf9bc_1366x736.png) b:下一步操作,相当于 git commit ![](https://box.kancloud.cn/ef1539b4f4b82a388ecf005f520d2f11_1366x736.png) c: 拉取版本库代码,相当于 git pull ![](https://box.kancloud.cn/f173fc3877b780321a5b32e4cfbb9adf_1366x736.png) d:推送代码 git push ![](https://box.kancloud.cn/70cb146579a4f3c947a85017aaa461f8_1366x736.png) ### 注意 第一次输入密码错误后续输入不了密码了可以输入以下命令 ``` git config --system --unset credential.helper ```