详细的Git使用指南

在我们的日常工作生活中,没有人可以记住所有应该记住的东西,以前人们可能使用纸质或其他一些易于丢失,损坏的媒介来做工作生活记录,随着社会的进步,我认为有一种工作方式可以十分理想的帮助我们进行工作的记录,那就是Git+Github+Markdown。
   本文详细记录一下Git的使用。

Git的安装

Git的安装没有什么需要我们特别注意的地方,下载后一路next即可,唯一需要注意的是安装路径最好别有中文。安装完成后在开始菜单会有Git目录即说明安装成功。

Git的使用

从Git目录里点击git bash,会出现一个黑屏终端,这是一个仿Linux的终端,里面运行的是Linux的命令。

  1. 上Github官网创建一个账户

  2. 配置用户名:git config --global user.name “你自己Github的用户名”

  3. 配置邮箱: git config --global user.email “你自己github注册邮箱”

  4. 版本库问题:
    1>.什么是版本库:
    有名仓库,可以理解为一个目录,这个目录里所有的文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都有一个追踪历史,或者将来某个时刻可以还原
    2>创建版本库:
    在你愿意的地方创建一个文件夹 ,从终端进入文件目录(这里注意在终端输入cd 后将文件夹直接拖入终端,因为这是Linux,路径和windows肯定不同)。
    常用Linux命令:
    pwd:展示当前工作目录
    ls -a :当前文件下内容
    cd … :进入上一级目录
    然后在当前目录下执行命令:git init ,这样会在你创立的文件夹下生成一个.git的文件(默认隐藏),但你可以在终端执行ls -a来找到他,注意这个.git文件千万不要修改

  5. 把文件添加到仓库:
    在仓库创建或添加文件到仓库,执行命令 git add “文件名”,这样才算将文件添加到仓库。

  6. 将文件提交到仓库:
    git commit -m “注释信息”

  7. git status 命令:可以查看当前仓库的状态,如果对仓库的文件进行任何修改,这里都有提示

  8. git diff 命令:可以查看文件修改的内容。

  9. git log命令:可以显示从最近到最远的提交日志

  10. git --pretty=oneline 将日志以一行提交。

  11. 版本回退:
    git reset --hard HEAD^:回退到上个版本。
    git reset --hard HEAD^^:回退到上上个版本。
    git reset --hard 具体版本号 回退到具体某个版本(版本号输入前几个就行,不需要全部输入)

  12. git reflog命令:记录了每一次执行的命令。

  13. git checkout – filename:撤销的命令:
    1.如果文件自动修改后还没有被放到缓存区,现在,撤销修改就会返回到和版本库一样的状态
    2.如果文件已经被添加到缓存区后,又做了修改,现在,撤销修改就会回到添加到缓存区后的状态
    总之,就是让这个文件回到最后一次git commit或者git add时的状态。
    注:我们书写代码 add 就是提交到了缓存区,然后commit就到了版本区

创建远程仓库

通过上面的步骤我们已经完成了本地仓库的创建,接下来我们创建github的远程仓库。

  1. 创建SSH Key(秘钥是确定可以向gitbhub上传文件的电脑):
    在终端输入:ssh-keygen -t rsa -C “邮箱”
    记住保存key的地址 然后回车两级,进入地址目录(.ssh的目录)
    cat id_rsa.pub,然后复制s开始到m(也就是开始到结束,别用记事本,用sublim等软件,否则会出现格式问题)
    登录gitbub,进入setting,SSH选项,点击添加秘钥,然后将复制的内容粘贴进去。

  2. 创建远程仓库

  3. 关联远程仓库地址:
    电脑地址(这里要转到文件目录下)关联远程仓库地址(远程仓库地址是绿色的clone那个选项的SSH下路径)
    执行命令:git remote add origin git@远程仓库地址

  4. 删除关联 git remote rm origin

  5. 推送本地库内容到远程库:git push origin master
    注意:需要先把远程库内容拉倒本地,否则会报错。
    拉取远程库内容到本地库: git pull origin master --allow-unrelated-histories。
    执行命令可能会进入vim 直接:q就可以退出来

到这步我们实现了本地库和github库的连接,我们可以将本地的内容推送到远程仓库。

从远程库到本地库

我们在实际应用中最常使用的是从远程仓库拉取文件,然后进行工作最后再提交,一下是远程到本地的操作。

  1. 在github选择远程库,并克隆他的地址
  2. 在黑屏终端输入:git clone +ssh地址
  3. 进入下载好的本地库进行开发工作

Git分支

作用:假设你需要开发一个新功能,但是需要两周才能完成,第一周写了50%,如果立即提交因为
代码还没有写完,不完整的代码会导致别人不能干活了,但如果等代码全部写完再一次提交,又会存在丢失每天进度的巨大风险。
有了分支可以解决上述的问题,创建一个属于自己的分支,别人看不到,还继续在原来的分支上正常工作,而我们在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样既安全又不影响别人的工作。

特点:git的分支是与众不同的,无论创建,切换和删除分支,Git在非常短的时间内就能完成!无论版本库是一个文件还是一万个文件

master主分支:在版本回退中,每次提交,Git都把他们串成一条时间线,在Git里,这个分支叫做主分支,既master分支。HEAD严格来说不是志向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前的分支。

每次提交,master分支都会向前移动一步,这样随着不断提交,master分支也越来越长

创建分支:git branch 分支名

查看当前分支:git branch

切换分支:git checkout 分支名

创建与切换同时进行:git checkout -b 分支名

将分支内容整合到master上:
首先,切换到master分支
然后 git merge +分支名

创建远程分支:git push --set-upstream origin 分支名

切换到本地某个分支工作:
一:在github建立远程库,并克隆他的地址

二:在黑屏终端输入:git clone +ssh地址

三:git checkout -b 分支名

 git pull origin 分支名

812LFWMRSH-eyJsaWNlbnNlSWQiOiI4MTJMRldNUlNIIiwibGljZW5zZWVOYW1lIjoi5q2j54mIIOaOiOadgyIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IklJIiwiZmFsbGJhY2tEYXRlIjoiMjAxOS0wNC0yMSIsInBhaWRVcFRvIjoiMjAyMC0wNC0yMCJ9LHsiY29kZSI6IkFDIiwiZmFsbGJhY2tEYXRlIjoiMjAxOS0wNC0yMSIsInBhaWRVcFRvIjoiMjAyMC0wNC0yMCJ9LHsiY29kZSI6IkRQTiIsImZhbGxiYWNrRGF0ZSI6IjIwMTktMDQtMjEiLCJwYWlkVXBUbyI6IjIwMjAtMDQtMjAifSx7ImNvZGUiOiJQUyIsImZhbGxiYWNrRGF0ZSI6IjIwMTktMDQtMjEiLCJwYWlkVXBUbyI6IjIwMjAtMDQtMjAifSx7ImNvZGUiOiJHTyIsImZhbGxiYWNrRGF0ZSI6IjIwMTktMDQtMjEiLCJwYWlkVXBUbyI6IjIwMjAtMDQtMjAifSx7ImNvZGUiOiJETSIsImZhbGxiYWNrRGF0ZSI6IjIwMTktMDQtMjEiLCJwYWlkVXBUbyI6IjIwMjAtMDQtMjAifSx7ImNvZGUiOiJDTCIsImZhbGxiYWNrRGF0ZSI6IjIwMTktMDQtMjEiLCJwYWlkVXBUbyI6IjIwMjAtMDQtMjAifSx7ImNvZGUiOiJSUzAiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiUkMiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiUkQiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiUEMiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiUk0iLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiV1MiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiREIiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiREMiLCJmYWxsYmFja0RhdGUiOiIyMDE5LTA0LTIxIiwicGFpZFVwVG8iOiIyMDIwLTA0LTIwIn0seyJjb2RlIjoiUlNVIiwiZmFsbGJhY2tEYXRlIjoiMjAxOS0wNC0yMSIsInBhaWRVcFRvIjoiMjAyMC0wNC0yMCJ9XSwiaGFzaCI6IjEyNzk2ODc3LzAiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZX0=-ti4tUsQISyJF/zfWxSHCr+IcYrX2w24JO5bUZCPIGKSi+IrgQ0RT2uum9n96o+Eob9Z1iQ9nUZ6FJdpEW5g0Exe6sw8fLrWMoLFhtCIvVgQxEEt+M7Z2xD0esmjP1kPKXZyc/i+NCxA2EO2Sec9uifqklBGP1L3xoENAw2QsIWBfttIe6EPWhbS8TIMMr2vF/S3HrN8To5Hj5lwD/t1GHgFK1uWrhsuifAiKcVzqogybzGiR1h2+yNYTMbKxP7uPCcdYMsIyrBNVRGA3IuEJgyGQTQlFbnVQoVUTGPW2tQxprmC464wMjKi40JHh27WzjOHPwgzxDaigwn4Z0EbSpA==-MIIElTCCAn2gAwIBAgIBCTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE4MTEwMTEyMjk0NloXDTIwMTEwMjEyMjk0NlowaDELMAkGA1UEBhMCQ1oxDjAMBgNVBAgMBU51c2xlMQ8wDQYDVQQHDAZQcmFndWUxGTAXBgNVBAoMEEpldEJyYWlucyBzLnIuby4xHTAbBgNVBAMMFHByb2QzeS1mcm9tLTIwMTgxMTAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQAF8uc+YJOHHwOFcPzmbjcxNDuGoOUIP+2h1R75Lecswb7ru2LWWSUMtXVKQzChLNPn/72W0k+oI056tgiwuG7M49LXp4zQVlQnFmWU1wwGvVhq5R63Rpjx1zjGUhcXgayu7+9zMUW596Lbomsg8qVve6euqsrFicYkIIuUu4zYPndJwfe0YkS5nY72SHnNdbPhEnN8wcB2Kz+OIG0lih3yz5EqFhld03bGp222ZQCIghCTVL6QBNadGsiN/lWLl4JdR3lJkZzlpFdiHijoVRdWeSWqM4y0t23c92HXKrgppoSV18XMxrWVdoSM3nuMHwxGhFyde05OdDtLpCv+jlWf5REAHHA201pAU6bJSZINyHDUTB+Beo28rRXSwSh3OUIvYwKNVeoBY+KwOJ7WnuTCUq1meE6GkKc4D/cXmgpOyW/1SmBz3XjVIi/zprZ0zf3qH5mkphtg6ksjKgKjmx1cXfZAAX6wcDBNaCL+Ortep1Dh8xDUbqbBVNBL4jbiL3i3xsfNiyJgaZ5sX7i8tmStEpLbPwvHcByuf59qJhV/bZOl8KqJBETCDJcY6O2aqhTUy+9x93ThKs1GKrRPePrWPluud7ttlgtRveit/pcBrnQcXOl1rHq7ByB8CFAxNotRUYL9IF5n3wJOgkPojMy6jetQA5Ogc8Sm7RG6vg1yow==

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值