这是我参与「第四届青训营 」笔记创作活动的的第3天
git原理
head指向当前分支,当前有两个分支master、hot-fix,每个分支都有不同的版本。 切换分支就是切换head的指向
git init:将当前目录配置成git仓库,信息记录在隐藏的.git文件夹中git status: 查看仓库状态git add XX: 将XX文件添加到暂存区
git add .: 将所有待加入暂存区的文件加入暂存区git rm –cached 文件名: 删除暂存区中的某个文件git reset .: 撤销上一次提交暂存区的操作git commit -m "备注信息": 将暂存区的内容提交到本地库分支git log: 查看当前分支的所有版本git reflog: 查看HEAD指针的移动历史和版本号(包括被回滚的版本)git reset --hard HEAD^:将代码库回滚到上一个版本
git reset --hard 版本号: 回滚到某一特定版本git branch: 查看所有分支和当前所处分支git branch 分支名: 创建分支git checkout 分支名: 切换分支git merge 分支名:将此分支合并到当前分支上git remote add 远程库别名 https://github.com/xxx/xxx.git:将本地仓库关联到远程仓库,并创建远程仓库别名,后面网址为GitHub上的https链接git remote -v:查看别名git push -u 远程库别名 分支名:推送本地分支到远程库,第一次push需要加[-u],以后不需要加了git pull 远程库别名 分支名:拉取远程库的分支到本地git clone https://github.com/xxx/xxx.git:将远程仓库XXX下载到当前目录下,克隆是完整的拿来远程库项目,pull是拉去特定的一个远程分支内容
合并分支有时会产生冲突
合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。git无法替我们决定使用哪一个。必须人为决定新代码内容
产生冲突时,人为修改合并分支的文件并提交代码库即可