一、基础操作
0.git 初始化。这台机器上所有的Git仓库都会使用这个配置。
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
1.创建版本库。版本库又名仓库,英文名repository,可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。(clone 之前先创建版本库)
$ git init
2.提交 。可以一次add多个文件。
git add wenjian1
git add wenjian2
git commit -m "提交说明"
3.查看状态 git status。git status命令可以让我们时刻掌握仓库当前的状态,
例如:(1)可以看看到底是哪个文件修改了(但不知道修改的内容)。
(2)在git add之后,git commit之前,我们可以执行 git status ,查看有哪些文件被add了需要提交。
$ git status
4.查看版本变化: git diff 文件名。可以查看被修改的文件到底修改了什么内容。
git diff readme.txt
二、分支管理
0.我们创建dev
分支,然后切换到dev
分支:
$ git checkout -b dev
or
$ git switch -c dev
git checkout
命令加上-b
参数表示创建并切换,相当于执行以下命令。直接执行git branch可以查看当前所有的分支。
$ git branch dev 创建dev分支(dev可以换成其他名字.eg:wcf)
$ git checkout dev 切换到dev分支(git switch dev亦可,推荐switch)
1.在dev分支修改之后,想合并到master上,在master分支上执行以下命令。git merge
命令用于合并指定分支到当前分支。
注:若提示Fast-forward
信息,即Git告诉我们,这次合并是“快进模式”,也就是直接把master
指向dev
的当前提交。
git merge dev
2.合并完成后,就可以放心地删除dev
分支了。
git branch -d dev
3.当因同时修改同一个文件而使merge失败时:解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交(add+commit即可)。用git log --graph
命令可以看到分支合并图。
4.我们平时工作的Git应该是这样的。每个人都有自己的分支,并时不时地往dev
分支上合并;master
分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;
5.合并分支时,加上--no-ff
参数(--no-ff
参数,表示禁用Fast forward
)就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward
合并就看不出来曾经做过合并。
$ git merge --no-ff -m "merge with no-ff" dev
此时,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
未完待续。。。。
6.查看当前版本记录 git log --pretty=oneline
7.版本回退
回退到上一个版本 git reset --hard HEAD~
回退到上上个版本 git reset --hard HEAD~~
回退到上上个版本 git reset --hard 123122(未来版本号)
8.查看操作记录 git reflog(如果版本号忘记可以通过这个命令查)
9.
文件回到最近一次git commit或git add时的状态 git checkout -- readme.txt
暂存区的修改撤销掉 1.git reset HEAD readme.txt 2.git checkout -- readme.txt
推到了版本库撤销的话用版本回退。
10.删除文件 1.git rm test.txt 2.git commit -m "remove test.txt
11.复原删除文件 git checkout -- test.txt
12添加ssh. ssh-keygen -t rsa -C "490089604@qq.com" 接下来一路默认
13在本地推到远程仓库
1> git remote add origin git@github.com:490089604/learngit.git
2>git push -u origin master -u在这是第一次推的时候才会用到,直接git push origin master
3>添加错误可以删除。git remote rm origin
14. clone 远端库 git clone git@github.com:490089604/gitskills.git
15.分支管理
1>git checkout -b dev -b表示创建并切换。
2>列出所有分支 git branch
3>切换分支 git checkout master
4>合并分支 git merge dev
5>删除分支 git branch -d dev
6>查看分支合并 git log --graph
7>创建本地与远端分支的联系联系 git branch --set-upstream branch-name origin/branch-name
16.创建标签
git tag v1,0
git tag v0.9 6224937(id)
git tag -a v0.1(标签名) -m "version 0.1 released"(说明) 3628164(id)
17.查看标签 git tag
18.查看标签记录 git show <tagname>
19.删除标签
git tag -d v0.1
git push origin :refs/tags/v0.9
20. 推送表签到远端
git push origin v1.0
git push origin --tags(所有)
21.github 提供快速提交的的源代码
echo "# Crawl-data" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/490089604/Crawl-data.git
git push -u origin master
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/490089604/Crawl-data.git
git push -u origin master