一:安装git
二:创建本地仓库
git的仓库分为两种,一种是裸仓库,宁一种是非裸仓库
git init E:\myGitRepository
git init --bare E:\myGitRepository 创建的是裸仓库,不包含.git目录。
还可以通过clone克隆远程仓库
例如:
git clone E:\myGitRepository D:\myCloneGitRepository
这样我们就把刚刚创建的仓库克隆过来了。
三:配置用户
--注意git config命令的--global参数,⽤用了这个参数,表⽰示你这台机器上所有的Git仓库都会
使⽤用这个配置,当然也可以对某个仓库指定不同的⽤用户名和Email地址。
--自报家门--用于显示这个文件提交的作者是谁。
git config --global user.name "Noteshare"
git config --global user.email "chenhaixin163@163.com"
四:尝鲜操作
4.1上传新文件到git仓库
git add readme.txt
(readme文件必须放在仓库目录里面;fatal: This operation must be run in a work tree,必须在该目录下运行)
git commit -m "wrote a readme file"
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

git status 查看状态
git diff readme.txt查看修改情况

以下三个命令可以用来查看git的帮助文档,按q退出。
git --help
git help config
man git-config

五:git config的增删改查
增:
git config --global user.name noteshare
git config --global --add user.name noteshare 给用户名取个别名
查:
git config user.name
或者
git config --get user.name
查询列表-例如查询user.name有哪些值,一般使用的是最近一个
git config --list --global
结果:
user.name=name1
user.name=noteshare
删:
git config --global --unset user.name
warning:user.name has multiple values
git config --global -unset user.name noteshare
修改-和新增的第一条命令是相同的
git config --global user.name notesharenew

给git子命令取别名:
git config --global alias.co checkout
git config --global alias.br branch
gti config --global alias.st status
git config --global alias.ci commit
输入 git c 双击enter后我们可以看到包含c的命令
git log
输出了很多东西,而且输出的东西很乱不分行显示,我们可以为其输出一行的参数取个别名,方便以后使用。
git config --global alias.lol "log --oneline"
以后查看log直接输入
git -- lol即可

六:git基本工作原理及流程知识点杂记
1.git仓库有三个区域
working directory 日常编辑代码的地方,维护着一个树形结构
staging area 暂存区,相当于工作区与历史提交中间的一个缓存,它代表的是一个需要提交的工作的一个状态,它代表的是一个虚拟区域。
history repository 历史仓库,维护着commit指向的一个树形结构
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
对应的命令是git add 和git commit
git status 查看状态
git rm删除
git mv 重命名文件或移动文件
git ignore忽略不需要添加到暂存区和历史仓库中的文件
具体使用案例
步骤:创建文件
touch a
touch b
添加文件
git add a b
查看状态
git status
提交
git commit -m "注释信息"
到此这两个文件就已经提交到历史记录中去了。
修改下a
vim a
加入一些文字信息如
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
再次查看状态
git status
会显示a被修改了,但是没有保存到暂存区中
git commit -m "modify a"
如果我们不需要a了可以将其删除
git rm a 它会同时把工作区a和暂存区的a引用给删除掉
git status 查看下状态
git reset head a 将当前的分支重设(reset)到指定的<commit>或者HEAD(默认,如果不显示指定commit,默认是HEAD,即最新的一次提交)
git checkout a 检出a

如果要只删除暂存区中的a而不删除工作区中的a可以使用
git rm --cached a
git status
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
git add a 把a重新添加回暂存区
git mv a c 把a重命名为c
git status
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
其实git mv a c相当于以下命令
mv a c
git add a c
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
git add -A 把整个工作区都添加到暂存区里面
如果文件夹中有部分文件想忽略提交可以按如下方法来处理
vim .gitignore
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
git add .gitignore
git commit -m "add ignore"
把忽略文件提交上去,用于整个仓库的共享

七:git本地分支与合并
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

八:查看与对比历史记录
1.git show
2.git log
3.git diff
git log --oneline --decorate --graph --all
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

查看对应的提交
git show master^ 第一次提交
git show master^2第二次提交
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
git diff --cache查看暂存区和工作区之间的差异
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

版本比较
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

九:撤销修改
git checkout
git reset
git clean
git revert

git checkout --master.txt 用暂存区中的内容来覆盖工作区中的内容
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录
删除不要的文件
初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录

初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录初学git记录


十:重写历史记录
1.git commit --amend
2.git rebase
3.git reset
4.git reflog
git reflog -10输出近10条提交


git push origin master把本地仓库信息推送到远程仓库中。


gitlab创建项目给出的命令
初学git记录

git fetch origin master

1 新建一个仓库,并且该仓库应该是git类型
1.1 git init新建git类型的仓库

2 新建文件并放入git仓库
2.1 touch a.txt   touch a.txt或者vi
2.2 git add 将新建的a.txt纳入git管理
2.3 git status,查看文件在git仓库中的状态
2.4 git commit -m "提交修改的信息说明",完成了首次提交
2.5 新增文件内容,再次尝试提交。

3 git的日志和跟踪管理
3.1 git log,查看每次操作的日志情况。
git log --pretty=oneline可以一行显示,查看关键信息
3.2 git diff,查看内容不同。

4 git版本的回退
4.1 退一步,git reset --hard HEAD^,指针回退一步;
4.2 退多步V1,git reset --hard HEAD^^^^^^^^^^,多个箭号
4.3 退多步V2,git reset --hard HEAD~数字步数
4.4 穿梭穿越,git reflog获得头7位版本号,然后
git reset --hard 7位版本号

5 git三区

6 git分支
6.1 git branch 查看分支
6.2 git branch 分支名字  作用是新建分支
6.3 git checkout 分支名  作用是切换分支
6.4 git merge 目的分支   作用是将目的分之的内容合并进当前分支
6.5 git branch -d 分支名 作用是删除分支
6.6 git checkout -b 分支名 作用是新建+切换一步搞定

7 第一种冲突
分支合并后的冲突,如何解决见VCR。

第二种冲突
git本地命令和github的交互冲突,
push提交后的内容冲突,请先pull到本地人工干预收工合并后再push

第三种冲突TortoiseGit和TortoiseSVN是同样的操作解决
TortoiseGit--黄色三角感叹号---edit conflict---merge---resolve--commit--->OK

第四种冲突,Egit处理
有冲突了先pull,具体见Vcr
8 TortoiseGit

9 EGit

[branch "master"]
    remote = origin
    merge = refs/heads/master

[remote "origin"]
    url = git@github.com:zzyybs/换成你自己的工程.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    push = refs/heads/master:refs/heads/master






















作者:星辰 时间:2016-11-28 浏览 1626评论 0 赞 0砸 0 标签: git
评论
还可以再输入500个字

请您注意

·自觉遵守:爱国、守法、自律、真实、文明的原则
·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规
·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·您在NoteShare上发表的作品,NoteShare有权在网站内保留、转载、引用或者删除
·参与本评论即表明您已经阅读并接受上述条款