- 安装git
- 创建版本库
- 多了.git目录,这个目录是git来跟踪管理版本库的,切记不可修改里面的文件,以防破坏仓库
- 把文件放到git仓库
- 用命令git add把文件添加到仓库
- 用git commit把文件提交到仓库
- git commit -m,-m后面是本次提交的说明
- 继续修改readme.txt文件
- git status命令让我们掌握仓库当前的状态,可以知道某些文件被修改了,但无法看到修改的具体内容
- 用git diff命令查看修改的具体内容
- 查看修改内容后,提交到仓库,谨慎的步骤
- git add
- git status查看
- git commit -m
- git status
- 版本回退
- git log命令查看提交记录,记录从最近到最远排列
- git reset HEAD^,回退到HEAD^版本(^表示上一个版本,^^表示上上版本,……)
- git reset+(版本号),可以找到某个版本,这是在窗口未关闭前的
- 如果git关闭后,想找到之前的版本,还可以git reflog获取之前每一次命令
- git log命令查看提交记录,记录从最近到最远排列
- 工作区,暂存区,版本库概念,只有先放在暂存区的修改才会被提交
- 撤销修改(git checkout –file,让文件回到最近一次git commit或git add时的状态,用版本库里的版本替换工作区的版本)
- 一种是
readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态 - 一种是
readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。 - git reset命令既可以回退版本,也可以把暂存区的修改撤销掉,重新返回工作区
- 一种是
- 远程仓库
- 创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有
id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key: - 登陆GitHub,打开“Account settings”,“SSH Keys”页面:
- 创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴 id_rsa.pub
文件的内容
3. 添加远程库
1. 在github上创建一个新的git仓库(目前还是空的,因为没关联到本地仓库)
2. git remote add origin git@github.com:enpong/git.git(远程仓库与本地仓库的关联)
1. ![](https://img-blog.csdn.net/20181023172916608?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwMDA1OTUw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
3. git push -u origin master,把当前分支master推送到远程,-u把本地的master分支与远程的master分支关联起来;在以后的提交中不需-u
分支管理
创建与合并分支
(git checkout -b + 分支)或 (git branch + 分支,git checkout + 分支),创建并切换分支
(git branch)查看所有分支,(git checkout + 分支)切换分支
(git merge + 分支),把指定分支的工作合并到当前分支
(git branch -d + 分支),删除指定分支
解决冲突
分支策略
- 在实际开发中,我们应该按照几个基本原则进行分支管理:
首先, master
分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;
那在哪干活呢?干活都在 dev
分支上,也就是说, dev
分支是不稳定的,到某个时候,比如1.0版本发布时,再把 dev
分支合并到 master
上,在 master
分支发布1.0版本;
你和你的小伙伴们每个人都在 dev
分支上干活,每个人都有自己的分支,时不时地往 dev
分支上合并就可以了。
所以,团队合作的分支看起来就像这样:
保存工作现场去做其他工作后接着继续原来的工作
(git stash),把当前工作现场保存起来
(git stash list),查看保存的工作现场
恢复工作现场
(git stash apply)恢复,(git stash drop)删除
(git stash pop),恢复同时删除