撸起袖子加油干.
Git 特点: 分布式/版本控制
版本控制发展
-
文件管理: 直接使用文件系统管理
-
本地版本控制软件: 类似游戏存档. 问题: 只能一个人进行开发无法多人协同
-
集中式版本控制: SVN. 问题: Server挂掉.
-
分布式版本控制: 现在主要使用.
Git 分区图
Git命令
第一阶段: 单枪匹马开始干
git init | 让Git在这个文件夹下初始化, 之后可以通过git管理当前文件夹 |
git status | 检测当前文件夹下文件的状态 |
git add filename | 将这个文件用git进行管理 |
git add . | 同上, 所有文件都被进行管理 |
git commit -m ‘描述信息’ | 生成一个版本 |
git log | 查看版本记录 |
第二阶段: 拓展新功能
git add filename | 将这个文件用git进行管理 |
git commit -m ‘描述信息’ | 生成一个版本 |
第三阶段: 发生问题, 回滚
回滚之前版本:
git log | 查看版本记录 |
git reset --hard 版本号 | 回滚到此版本 |
回滚之后版本:
git reflog | 可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作) |
git reset --hard 版本号 | 回滚到此版本 |
分支操作
git branch | 查看所有分支 |
git branch 分支名 | 创建新分支 |
git checkout 分支名 | 切换到此分支 |
git merge 分支名 | 将此分支合并到当前所在分支(合并前要切换回要被合入的分支) |
git branch -d 分支名 | 删除这个分支 |
产生冲突的情况, 手动修改合并后的文件, 再add commit即可
$ git merge dev
Auto-merging test.txt
CONFLICT (content): Merge conflict in test.txt
Automatic merge failed; fix conflicts and then commit the result.
远程操作
git clone url(内部已实现git remote add origin 地址) | 将代码拉取 |
git checkout 分支名 | 切换分支 |