git的基本概念
git 将开发项目目录分为三个区域:工作区、暂存区、仓库。git的作用是将用户的代码从工作区保存到仓库。
工作区:就是您开发项目时的目录。
暂存区:临时完成的工作,暂时存储的区域,等待着被提交到仓库。
仓库:最终存放的区域。
git的常用命令
git init初始化完成后,git 会在当前目录下创建一个隐藏的目录 .git ,即本项目的仓库。
git clone 地址
git branch -a #查看所有分支
git branch查看当前分支(主要10871有没有选择,没有就git checkout milestone#10871 切换分支再git branch)
测试是 git checkout -b test 删除本地git branch -d test远程git push origin --delete test
git branch "Your branch" #创建分支
git checkout "Your branch" #切换分支
在push项目前,需要把远程仓库pull到本地,避免远程和本地发生冲突:
git pull更新项目
git log查看别人有没有更改
乱码:https://www.cnblogs.com/yanzige/p/9810333.html
git diff 查看与上个版本的区别。如果本次有改动后(未提交)才可以看到变化
git add.
注意:提交之前,可git status 查看当前git的状态。
再将文件从暂存区保存到仓库: git commit -m "注释"
提交完成,输入 git status ,会提示: working tree clean 表示git操作流程结束了。
git push milestone#10871
代码冲突:
1.git stash 先将本地的修改保存的栈中,然后拉取远程仓库代码:
再把刚刚修改的代码放出来:git stash pop 然后add commit push
git的基本命令应用
1) 先创建一个项目所在的文件夹。例如: gitDemo
- git仓库初始化命令: git init
初始化完成后,git 会在当前目录下创建一个隐藏的目录 .git ,即本项目的仓库。
3) 先将文件提交到暂存区。 git add <文件名>
注意:提交之前,可git status 查看当前git的状态。
4) 再将文件从暂存区保存到仓库: git commit -m “注释”
提交完成,输入 git status ,会提示: working tree clean 表示git操作流程结束了。
以后,每次在项目工作完成一个阶段后,重复使用
git add <文件名> < .html | .js | .css > <目录名> < . >
git commit -m "注释"
即可将文件从工作区提交到仓库。
其他git的常用命令:
```c
git status 查看状态。
git diff 查看与上个版本的区别。如果本次有改动后(未提交)才可以看到变化
git log 查看最近到最远的提交记录
git reflog 查看命令历史,一般用来确认回到过去的那个版本
git reset --hard <commit_id> 用来回退到上一个版本。commit-id每次提交git根据您的注释自动生成的加密字符串。只需要输入前六位。
删除文件:
在工作区删除文件后,注意在仓库中也删除该文件:
git rm <文件名>
git commit -m "删除了xxx文件"。
在工作区删除文件后,可以再恢复文件
git checkout -- <文件名>
分支相关命令
git branch 如果不输入分支名,则查看当前所有分支
git branch 分支名称 创建并克隆一个侧分支
git checkout 分支名称 切换到该侧分支上。
练习:先切换到master分支,从master分支上克隆一个xiaohong分支,切换至xiaohong分支,修改代码提交仓库两次。然后再切换回master分支。
合并分支
git merge 侧分支名
注意,合并操作前,先切换到主分支(master),再执行此命令。
合并冲突及解决(了解)
当两个侧分支对同一个文件进行了修改并提交,在合并时就会出现(conflict)
当冲突出现时,编辑器中对代码修改为:
解决冲突,只能由冲突的双方商量解决。有了解决方案后,删除上面代码中那些符号,然后再次提交master分支,即解决了冲突。
合并冲突解决后,各分支再从master上更新。
先切换至自己的分支,
git checkout xiaohong
再和主分支执行一次合并
git merge master
删除侧分支
git branch -d 分支名称
注意,删除前工作区时干净的。
文件忽略
项目文件夹内有一些文件不希望提交到仓库,那么可以使用git的配置文件将其忽略。
创建一个 .gitignore 文件放置在项目根目录下
该文件内可将某个文件或目录忽略,不再提示要求提交该文件了。