Git 学习笔记







Git鼓励大量使用分支:




1、
-- git config 命令的 --global 参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置
git config --global user.name  "Your Name"
git config --global user.email "email@example.com"


==================== 创建版本库
-- 通过 git init 命令把这个目录变成Git可以管理的仓库


git init


当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的


-- 用命令git add告诉Git,把文件添加到仓库
git add readme.txt
-- 用命令git commit告诉Git,把文件提交到仓库  -m 后面输入的是本次提交的说明
git commit -m "wrote a readme file"




初始化一个Git仓库,使用git init命令。


添加文件到Git仓库,分两步:


第一步,使用命令git add <file>,注意,可反复多次使用,添加多个文件;


第二步,使用命令git commit,完成。








-------------------


git status  让我们时刻掌握仓库当前的状态


git diff readme.txt 


要随时掌握工作区的状态,使用git status命令。


如果git status告诉你有文件被修改过,用git diff可以查看修改内容。




===============版本回退


git log
git log --pretty=oneline


git reflog 记录你的每一次命令


 --上 一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
git reset --hard HEAD^   回退到上一个版本


git reset --hard 3628164   3628164...是回退的版本号,没有必要写全,前几位就可以了,Git会自动去找。




================工作区和暂存区
工作区(Working Directory): 就是你在电脑里能看到的目录
版本库(Repository) : 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库






==========撤销修改


命令 git checkout -- readme.txt 意思就是,把readme.txt文件在工作区的修改全部撤销


git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令


用命令  git reset HEAD file 可以把暂存区的修改撤销掉(unstage),重新放回工作区




场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。


场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。


场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。






==========删除文件


一是确实要从版本库中删除该文件
git rm test.txt
git commit -m "remove test.txt"


另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本
git checkout -- test.txt






分支管理


主分支  master分支


我们创建dev分支,然后切换到dev分支
git checkout -b dev






查看分支:git branch
 git branch -a  查看所有远程分支
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>    




 git log --graph  命令可以看到分支合并图
 git log --graph --pretty=oneline --abbrev-commit




标签管理
=====创建标签
  git tag v1.0


  指定某个提交打标签
  git tag v0.9 6224937


  还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:
  git tag -a v0.1 -m "version 0.1 released" 3628164


  git tag


  git show v0.9


======操作标签


 git tag -d v0.1 删除标签


 如果要推送某个标签到远程,使用命令
 git push origin <tagname>


  一次性推送全部尚未推送到远程的本地标签
  git push origin --tags




  命令git push origin :refs/tags/<tagname>可以删除一个远程标签




==========忽略特殊文件


.gitignore




GitHub


我们第一次推送master分支时,加上了-u参数
git push -u origin master


从现在起,只要本地作了提交,就可以通过命令:
git push origin master




git clone git@github.com:michaelliao/gitskills.git
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值