1.指定用户名和地址
$ git config --global user.name "*"
$ git config --global user.email "*"
2.创建版本库
$ mkdir learngit
3.进入仓库
$ cd learngit
4.显示当前目录
$ pwd
5.把这个目录变成git可以管理的仓库
$ git init
6.编写一个文件readme.txt放到learngit目录下
7.把文件添加到仓库
$ git add readme.txt
8.把文件提交到仓库
$ git commit -m "wrote a readme file"
-m
后面输入的是本次提交的说明,可以输入任意内容.
因为commit
可以一次提交很多文件,所以你可以多次add
不同的文件.
9.修改readme.txt文件
10.可查看结果-仓库当前的状态
$ git status
11.可查看修改了什么内容
$ git diff readme.txt
12.提交修改
$ git add readme.txt
$ git commit -m "add distributed"
13.可查看历史记录
$ git log
显示从最近到最远的提交日志.
如果嫌输出信息太多,可以试试加上--pretty=oneline
参数:
$ git log --pretty=oneline
14.把readme.txt回退到上一个版本
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD
表示当前版本,也就是最新的提交版本,上一个版本就是HEAD^
,上上一个版本就是HEAD^^
,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
。
$ git reset --hard HEAD^
此时最新的那个版本append GPL
已经看不到了。
15.指定回到未来的某个版本
在命令行窗口中找到那个append GPL
的commit id(版本号)是480a024
$ git reset --hard 480a024
16.查看readme.txt的内容
$ cat readme.txt
17.想恢复到新版本
18.提供了一个命令用来记录你的每一次命令
$ git reflog
可查阅到版本号。
19.还未添加到暂存区:丢弃工作区的修改
$ git checkout -- readme.txt
20.已添加到暂存区:丢弃工作区的修改
$ git reset HEAD readme.txt
可以把暂存区的修改撤销掉,重新放回工作区
21.删除文件
$ rm test.txt
22.从版本库中删除该文件
$ git rm test.txt
$ git commit -m "remove test.txt"
23.删错了,版本库里还有,把误删的文件恢复到最新的版本
$ git checkout -- test.txt
其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
24.把当前分支推送到远程
$ git push -u origin master
25.只要本地作了提交,就可以通过命令把最新修改推送至github
$ git push origin master
26.先创建远程库,后从远程库克隆
$ git clone [email protected]:cyq333/gitskills.git
$ cd gitskills $ ls
27.创建并切换到dev分支
$ git checkout -b dev
相当于以下两条命令:
$ git branch dev
$ git checkout dev
28.查看当前分支
$ git branch
此时可以在该分支上修改文件,然后添加,提交,修改完成之后,
29.切换回master分支
$ git checkout master
30.把dev分支的工作成果合并到master分支上
$ git merge dev
31.合并完成后,删除dev分支
$ git branch -d dev
32.查看远程库的信息
$ git remote -v
33.推送分支
$ git push origin master