Git 初使用

一、好文推荐

  1. git 下载 (Git 中文详细安装教程),适合英语底子不太好的朋友;
  2. Git使用教程 ;

============== 以下本人编写内容,大多是对Git使用教程 该文章的尝试性操作 ==============

二、背景

工作有一年的时间,近期身边的朋友全部都渐渐地开始跳槽、加薪了。
然而二流码农的我还在趴窝在XX证券公司,也想听朋友的提离职然后加薪,but担心万一现在这个工作都没了(毕竟房贷,生活压力,花呗,信用卡等等,相信很多朋友和我一样),所以唯一的途径就是再补充补充自己。
从网上找找近期对java工程师的招聘要求,明显对版本控制的约束不像之前那样写在需求中,估计是因为现在大部分程序员都已经get这个技能了。
迫于无奈,只能强制要求自己学一学。

三、从这里开始

1. 安装 - 老生常谈;

2. 配置 - 找一找config文件

a. 这次和往常不太一样,这次是在git Bash(类似命令行窗口下配置)
b. 因为Git是分布式版本控制系统,所以需要填写用户名邮箱作为一个标识。
(注意git config –global参数,有了这个参数,表示你的机器上所有的git仓库都会用这个配置,当然也可以对单个项目配置不同用户名和邮箱)

Lijingwen@DESKTOP-B7VL592 MINGW64 ~
$ git config --global user.name "lijwen@ThinkPad"

Lijingwen@DESKTOP-B7VL592 MINGW64 ~
$ git config --global user.email "[email protected]"

3. 常用Git操作

a. 创建版本库:
(1). 版本库概念:
版本库又叫仓库,英文名repository,在Git使用教程 文章中其作者为便于大家理解,将仓库比喻成目录,这个想法很好,也很便于大家的理解。仓库里面的所有文件都会别Git管理,每个文件的修改、删除都能够git跟踪记录,以便任何时刻可以追踪历史,或者对文件还原回复。
(2). 通过命令 git init 把这个目录变成git可以管理的仓库

Lijingwen@DESKTOP-B7VL592 MINGW64 /g
$ cd GitRepository/

Lijingwen@DESKTOP-B7VL592 MINGW64 /g/GitRepository
$ git init
Initialized empty Git repository in G:/GitRepository/.git/

Lijingwen@DESKTOP-B7VL592 MINGW64 /g/GitRepository (master)

b. 把文件添加到GitRepository目录下
(版本控制系统只能跟踪文本文件的改动,,但是图片视频等二进制文件,虽然也能有版本控制系统管理,但是无法跟踪文件的变化,只能把二进制文件每次改动记录,但是具体改了什么git也不进行记录)。
c. 常用命令

命令 解释
git add ‘file’ 将文件添加到暂存区
git commit -m ‘写提交注释’ 文件提交到仓库
git status 查看文件是否有文件未提交
git diff ‘file’ 查看文件的修改详细
git log 查看修改历史
git log –pretty =oneline 仅显示版本和注释信息
git reset –hard HEAD^ 回退到上一个版本
git reset –hard HEAD^^ 回退到上上一个版本
git reset –hard HEAD~100 回退到前100个版本
git reflog 查看版本号
git reset –hard ‘版本号’ 恢复到版本
git checkout –‘file’ 撤销文件在工作区做的修改

4. 工作区与暂存区的概念

  1. 工作区:电脑上看到的目录,如GitRepository里的文件(.git隐藏目录版本库除外)。或者以后需要在新建的目录文件等等都属于工作区;
  2. 版本库:工作区的.git目录属于版本库,版本库中最重要的就是stage(暂存区),还有Git自动创建了第一个分支master,以及纸箱master的指针HEAD。
  3. git add 就是把文件添加到暂存区;然后通过git commit提交更改,将暂存区内容提交到当前分支上。

5. 远程仓库配置(可参考 Git在Windows下搭建本地远程仓库及一些问题小结

  1. 创建SSHKey 。 新打开一个git bash窗口,输入ssh-keygen -t rsa -C “你的任意用户名”;接下来会提示你生成文件的绝对路径+名字(不带后缀),接下来提示你输入密码(可以直接回车赋空)。网文说用户名要填邮箱,其实不必,用户名是用来生成钥匙对的,你输入什么都行,最后服务器要的也只是公钥和用户名。
  2. 登录github,打开” settings”中的SSH Keys页面,然后点击“Add SSH Key”,填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容.;
  3. 在github上创建一个New repository,将git复制,在本地的对应仓库下运行命令:
    git remote add origin (这里放刚才复制的git,不加()).
  4. 把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程,命令为:
    git push -u origin master.

6. 从远程库克隆项目到本地

git clone https://github.com/github登录名/对应项目名称

7. 创建与合并分支(涉及git冲突的问题)

每次提交Git都会把提交传承一条线–分支。截止目前只有一条时间线在Git中,这个分支是主分支-master。HEAD严格来说不是指向提交,二十指向master,master才是指向提交的,所以HEAD指向的就是当前分支。

命令 说明
git checkout -b dev 创建dev分支
git branch 查看当前分支
git checkout master 切换分支
git merge dev 在当前分支上合并dev分支内容
git branch -d dev 删除dev 分支

8. 分支管理策略

[待后期补充]

10. Git基本常用命令如下:

mkdir: XX (创建一个空目录 XX指目录名)

pwd: 显示当前目录的路径。

git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。

git add XX 把xx文件添加到暂存区去。

git commit –m “XX” 提交文件 –m 后面的是注释。

git status 查看仓库状态

git diff XX 查看XX文件修改了那些内容

git log 查看历史记录

git reset –hard HEAD^ 或者 git reset –hard HEAD~ 回退到上一个版本 (如果想回退到100个版本,使用git reset –hard HEAD~100 )

cat XX 查看XX文件内容

git reflog 查看历史记录的版本号id

git checkout — XX 把XX文件在工作区的修改全部撤销。

git rm XX 删除XX文件

git remote add origin https://github.com/tugenhua0707/testgit 关联一个远程库

git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库

git clone https://github.com/tugenhua0707/testgit 从远程库中克隆

git checkout –b dev 创建dev分支 并切换到dev分支上

git branch 查看当前所有的分支

git checkout master 切换回master分支

git merge dev 在当前的分支上合并dev分支

git branch –d dev 删除dev分支

git branch name 创建分支

git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作

git stash list 查看所有被隐藏的文件列表

git stash apply 恢复被隐藏的文件,但是内容不删除

git stash drop 删除文件

git stash pop 恢复文件的同时 也删除文件

git remote 查看远程库的信息

git remote –v 查看远程库的详细信息

git push origin master Git会把master分支推送到远程库对应的远程分支上

猜你喜欢

转载自blog.csdn.net/java_18945106612/article/details/80879325
今日推荐