基础
1.git远程项目目录结构图
- origin: 仓库名
- master:分支名
2.命令
- git init: 本地初始化一个git项目
- git add : 把修改提交到暂存区
- git commit : -m ‘记录此次的修改操作’ ,一次性把暂存区修改的信息提交到当前分支
暂存区和分支信息保存在:.git目录下,该目录保存git的版本信息,类似svn的.svn目录,默认是隐藏的
工作区干净的是什么意思?
所有的修改都git add保存到了暂存区,所有暂存区的内容都提交到的当前分支,可以用git status来查看当前工作区的情况
工作区不干净,两种情况:
- 1.修改没有执行git add ,放到暂存区
- 2.暂存区的内容没有提交到当前分支
撤销修改:
还没提交到暂存,修改了
git checkout -- readme.txt
提交到暂存区,后又修改了, 跟暂存区的结果一致
删除:
git rm a.txt
git commit
(不小心删除,恢复操作,git check -- a.txt )
git branch : 查看当前项目有哪些分支,并且当前处于哪个分支
git checkout -b dev
git checkout dev: 切换到某个分支
git checkout master: 合并到主干
git merge dev :分支合并
git branch -D dev :删除分支
git log : 查看日志,但是穿越过去时,日志也会丢失
1.在reset前,记录当前commit_id
2.使用git reflog,在提交代码时候尽量保留更多的信息
git reset --hard commit_id : 时光机穿越过去,重返未来
3.本地目录与远程目录同步
A:远程仓库名 B:本地分支名 C:远程分支名
1.本地项目是从远程仓库目录克隆的
#拉取远程仓库A下分支名为C的代码到本地分支
git pull A B:C
#提交本地B分支的代码都A仓库下的C分支
git push A B:C
2.本地项目关联远程项目情况
关联: git remote add origin http://git.intra.weibo.com/vip/vipcn.git
之后的操作与1相同
参考:
https://www.cnblogs.com/mashiqi/p/6002671.html
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000