程序猿必备的Git基本技能

 

Git是一个优秀的版本管理工具,gitHub是一个公共的仓库,可以将代码保存在云端~Git和GitHub的搭配让广大程序猿们可以一起和谐愉快地敲代码啦~(参考了:https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496,谢谢)

目录

一、下载与安装

二、修改基本配置

1、设置用户名与邮箱

2、修改GitBash的用户主目录

3、设置仓库位置

三、开始管理本地文件

1、注意

2、开始管理

3、分支

4、查看日志与回滚

5、撤销修改

四、开启远程仓库

1、注册一个gitHub的账号

2、生成SSH码并保存到GitHub相关配置中

3、建立远程连接

4、把代码发到远程仓库

5、从远程仓库拉取代码

6、处理冲突

7、多人协作时的好习惯


一、下载与安装

下载地址:https://git-scm.com/downloads

选择你的操作系统,下载对应版本,一路默认安装就好啦

 

二、修改基本配置

1、设置用户名与邮箱

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
  • 查看用户名与邮箱
$ git config user.name
$ git config user.email

2、修改GitBash的用户主目录

环境变量》新增》Home:D:/your_workPlace

3、设置仓库位置

实际上,步骤二就已经设置了仓库位置啦,但还要初始化一下,有两种方法

  • 方法1:打开你想要设置仓库的位置,右键git bash,然后输入指令:git init
  • 方法2:在git bash中按如下顺序操作
cd /G              |进入目标磁盘
mkdir gitPro       |创建文件夹
cd gitPro          |进入该文件夹
pwd                |当前文件夹路径
git init           |将该文件夹设置为仓库

 

三、开始管理本地文件

1、注意

  • 版本控制系统只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码,没法跟踪Word文件的改动
  • Git优秀之处在于:Git跟踪并管理的是修改,而非文件。属于增量型~
  • 为了避免编码问题,建议使用notepad++创建txt,而非window自带的方式创建

2、开始管理

(1)单个添加

  • 在仓库目录下创建一个文件,例如:try.txt
  • 右键打开git bash,键入两句指令就可以了
    • 第一句,将文件放到暂存区,输完回车:git add try.txt   
    • 第二句,提交至本地仓库,-m"信息"最好写上,否则会出现讨厌的vim界面:git  commit -m"可以是中文哦"

(2) 批量添加

  • 按文件夹添加:git add 文件夹/
  • 按类型添加:git add *.文件类型
  • 添加全部:git add -A
  • 添加全部:git add .
  • 可以add 多个然后一起commit
  • add和commit合并一起:git commit -am"信息"

(3) 暂存区与本地仓库的原理

  • 工作区:在电脑里能看到的目录,如work_place
  • 版本库:.git隐藏文件。其中存储了很多东西:
    • ·stage/index 暂存区
    • master分支:git为我们主动创建的第一个分支
    • HEAD:指向master的一个指针

3、分支

我们可以在不同的分支上工作,就放佛拷贝了原文件的一个副本,然后尽情地修改,而不要担心会丢失、损坏原来的文件。

“提倡使用子分支:创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。”

(1) 创建分支:git branch  yourBranchName

(2) 切换分支:git checkout  yourBranchName

(3) 合并以上,创建并切换分支:git checkout -b  yourBranchName

(4) 查看分支:git branch

(5) 删除分支:git branch -d   yourBranchName

(6)合并某分支到当前分支:git merge yourBranchName

4、查看日志与回滚

查看过去的日志可以知道自己做了什么,然后根据日志的名称,可以让文件恢复到过去的状态

(1)最原始的查看日志(不推荐,因为太详细了!):git log

(2)只看简要信息(推荐):git log  --pretty=oneline

(3)推出log状态:Q

日志中那一长串黄色字符,是日志的名字,根据它来定位要回滚的位置,不用担心名字太长,可以只输入前面的几位,开始回滚啦!

(1) 回滚到指定位置:git reset --hard e9f072

(2)回滚到上一版本:git reset --hard HEAD^

(3)回滚到上上一版本:git reset --hard HEAD^^

如果又反悔了,要回滚到“将来”怎么办——通过git reflog查看每一次命令对应的版本号,从而还原

5、撤销修改

(1) 撤销工作区:让文件回到最近一次git commit或git add时的状态。(将没有add到暂存区的修改全部撤销)

git checkout --yourfile

(2)把暂存区的修改撤销掉(unstage),重新放回工作区

git reset HEAD yourfile

 

四、开启远程仓库

1、注册一个gitHub的账号

这个不说啦

2、生成SSH码并保存到GitHub相关配置中

什么要SSH Key:因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

允许多个Key:假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。

(1)指令:ssh-keygen -t rsa -C "[email protected]"

如果没有更改用户目录,则生成的.shh文件在C:/user的目录下哦,更改目录的方法往上翻

(2) 打开.shh文件夹,其中.pub是公钥,即我们要保存到GitHub中的SSH Key

用notepad++打开,然后复制

(3) 打开gitHub的setting,选择SSH and GPG Keys,点击new SSH Key,title随便取一个,自己记得的,再将公钥粘贴到框框中。

3、建立远程连接

情景:你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。

(1) 将本地主分支与远程仓库链接:

  • 创建远程连接,名字叫做origion:$ git remote add origin [email protected]:yourGitHubName/yourRepositoryName.git
  • 首次将当前分支内的文件推送到远程服务器:$ git push -u origin master 

第一次连接时可能会报错:he authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.  点yes就行了

-u参数的作用:第一次连接远程库的时候加上,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

(2) 创建本地分支,并与远程某分支连接

  • 创建远程origin的dev分支到本地:git checkout -b dev origin/dev   
  • 本地和远程分支的名称最好一致;

 

4、把代码发到远程仓库

(1) 完整指令:git push origin <branch-name>

(2)如果当前分支就是对应的远程的那个分支,则直接:git push

 

5、从远程仓库拉取代码

(1) 第一次克隆:git clone [email protected]:yourGitHubName/yourRepositoryName.git

(2)已经建立过连接了,且当前分支和远程分支相对应:git pull

 

6、处理冲突

(1) 查看冲突的文件:git status

(2)图形化管理工具,此处推荐小乌龟工具:https://tortoisegit.org/

(3)出现vim界面怎么办?

我曾经试着去输入一些信息,但总是失败……甚至给下一次push带来了困难,于是放弃了……

自暴自弃的方案:shift+;     再输入wq,就是保存退出。如果是wq!,就是不保存退出

 

7、多人协作时的好习惯

(1)干完活记得先add、再commit、接着pull、最后push

(2)新的一天开始了,先pull,再开始干活!

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章