企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
【git命令教程】:[https://www.yiibai.com/git/](https://www.yiibai.com/git/) 【git本地docs】:D:\Program Files\Git\mingw32\share\doc\git-doc 可以使用 git [命令] --help 打开对应的介绍文档,如:`git push --help` 首先我们来看下**git分区** 1、工作区(肉眼可见的目录/文件) 2、暂存区(中间过渡区域,可以通过git add命令将工作目录文件放入该区域) 3、本地仓库(存放在工作目录下的.git隐藏文件夹中) 4、远程仓库 工作流程一览图: ![](https://box.kancloud.cn/646efaa96b5b5de3bc73648cd99395cb_820x255.jpg) ## 一、从远程库克隆,创建一个空目录,如git_test,进入目录,执行以下命令 ~~~ git clone https://github.com/zhangqh22/git_test.git ~~~ 重命名 ~~~ git clone https://github.com/zhangqh22/git_test.git git_test2 ~~~ ## 二、git add 命令 把工作区的内容提交到暂存区 1. git add . :增删改(.表示当前目录,是./的简写) 2. git add -u :删改 -u(--update) 3. git add -A :全部(增删改)-A(--all) ~~~ git add . ~~~ ~~~ git add -u ~~~ ~~~ git add -A ~~~ 回退(把暂存区内容回退到工作区) ~~~ git reset HEAD ~~~ ## 三、git commit 命令 把暂存区的内容提交到本地仓库 ~~~ git commit -m 'create file a.txt' ~~~ -m 表示 message,添加提交备注 添加并提交 ~~~ git commit -am '添加并提交' // 相当于 git add -u & git commit -m ~~~ ## 四、git push命令 把本地仓库的内容 push 到远程仓库 ~~~ git push -u origin master // -u(--set-upstream)添加上游(跟踪)引用,这样后面就可以直接 git push了 ~~~ ## 五、从add->push 命令过程 ~~~ git add -A git commit -m 'this is commit message' git push ~~~ ## 六、git pull命令 从远程仓库拉取代码到工作空间 git pull <远程主机名> <远程分支名>:<本地分支名> 如果只有一个分支又是追踪(track)分支,直接拉就行了 ~~~ git pull origin master // 或 git push ~~~ 拉取所有分支修改 ~~~ git pull --all ~~~ ## 七、分支(branch)操作 1、 查看分支 ~~~ git branch ~~~ 2、创建分支 ~~~ git branch dev ~~~ 3、检出分支 ~~~ git checkout dev ~~~ 4、合并分支 修改文本a.txt后,再检出分支master,合并dev到master ~~~ git merge dev ~~~ 这时就把dev分支下a.txt修改,合并到master分支下的a.txt了 5、删除分支 ~~~ git branch -d dev ~~~ ## 八、工作区修改与commit提交对比,使用git diff命令 假如修改了a.txt,然后add -> commit,然后再修改a.txt,这时使用`git diff`就可以查看工作区修改与本地仓库(commit提交)差异内容 ~~~ git diff ~~~ ![](https://box.kancloud.cn/6aab40e99771709428ab4014b25210ca_231x176.jpg) ## 九、冲突解决 假如两人(小明,小红)同时修改了a.txt。小明先修改并push推到远程仓库,而小红再修改并commit提交到本地仓库,这时小红去pull时就会起冲突 ~~~ hello world. <<<<<<< HEAD 444 ======= 123 >>>>>>> 2d7376b079e6364bef811b851b0b00e1622775cc ~~~ Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,这里我们把不需要的删掉,如下 ~~~ hello world. 444 123 ~~~ 然后add -> commit -> push ## 十、查看状态 git status 查看修改变化 ![](https://box.kancloud.cn/a9d116ed004b41a2c1460f73e7fe0764_595x377.jpg) 也可以查看有没有新的提交 ``` $ git status On branch test Your branch is behind 'origin/test' by 1 commit, and can be fast-forwarded. (use "git pull" to update your local branch) ``` ## 十一、回退到某一次提交版本 使用reflog查看提交记录,拿到提交id(即commit id) ~~~ git reflog -10 ~~~ ![](https://box.kancloud.cn/f86918586928060e571bd329fdb0f450_555x150.jpg) 使用 reset --hard 回退某一次提交版本 ~~~ git reset --hard c7c50c7 ~~~ 回退到上一次 ~~~ git reset --hard HEAD^ ~~~ ## 十二、checkout 命令 ~~~ git checkout -b dev // 创建并检出分支dev git push // 把dev分支推送到远程仓库 ~~~ 有时候需要查看某个提交版本的内容,这时可以基于提交id创建并检出新分支 ![](https://box.kancloud.cn/8c07a0626e93f70a2843c4121359c3cb_417x56.jpg) ## 十三、查看日志 git log ~~~ git log -3 // 查看最近3条日志 ~~~ ## 十四、用户配置 ~~~ git config user.name [git账号名] git config user.email [git邮箱] ~~~ ## 十五、添加 .gitignore 文件,把不想提交的文件或目录写到.gitignore里,下次add时就会忽略相应的文件或目录 参考链接: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 https://blog.csdn.net/wankui/article/details/52029246