GIt

GIt

Git笔记

SVN为代表的的集中式

必须有一个中央总控的服务器。(储存历史版本和代码信息)

image-20200909161131456

image-20200909161235875

GIT工作区

  • 工作区:我们可以看到的,并且可以写代码

  • 暂存区:是存储的

  • 历史区:生成历史版本

    image-20200909162507832

基本操作:

1.第一次安装后,在全局环境下配置基本信息:

1
2
3
4
5
git config --global -l  查看全局配置文件
git config -l 查看配置文件

git config --global user.name 'XXX'
git config --global user.email 'XXX@XXX'
1
clear  清除记录。

2.开始:

创建本地仓库

1
git -init  会生成一个隐藏的文件夹,“.git”不可删,历史取得一些信息也在这,生成在你打开的文件夹下。

要方法哦本地仓库的文件放到与.git文件同级的地方。

本地编写完代码后(在工作区),一些文件提交到暂存区。

1
2
3
git add XXX  把某个文件或文件夹提交到暂存区
git add . 把全部加到里面。
git add -A
1
2
3
git status查看状态(红色代表在工作区,绿色代表在暂存区,看不见证明所有修改信息在提交到了历史区)
git log
git relog 包含回滚信息。

暂存区内容提交到历史区:

1
git commit -m'描述信息'

回滚的使用:

1
2
3
git reset --hard ^C
git reset --hard 某个已经版本号,这样就把这个指定的版本就去掉了,但并没有删掉。
git relog 历史记录回滚就可以查看了。

部分解析git config --global -l

查看全局配置文件。

image-20200909162618633

git传输文件https git clone与ssh git clone之间的区别

首先看一下两种使用方法的面相:

https git clone是长这样的:

git clone https://github.com/project/repo.git

ssh git clone是长这样的:

git clone git@github.com:project/repo.git

区别就是所用的协议不同:

https用443端口,可以对repo根据权限进行读写,只要有账号密码就可进行操作。
ssh则用的是22端口,也可以对repo根据权限进行读写,但是需要SSH Keys授权,这个key是通过ssh key生成器生成的,然后放在github上,作为授权的证据,这样的话就不需要用户名和密码进行授权了。

ssh -T Github.com,认证成功后,查看是否连接上了GitHub。

git bash基本操作

在github上面建立仓库,私钥已建立。

本地仓库信息提交到远程仓库链接:

1
2
3
4
git remote -v     查看本地仓库和哪些远程仓库保持链接。
git remote add origin {git仓库地址} origin是随便起的链接名,

git remote rm origin
1
2
git pull origin master   提交之前最好先拉取,就是把git上的东西拉下来,
git push origin master 在传上去。

团队协作:

1
2
3
4
5
6
7
8
9
10
11
12
$ git clone 【远程仓库git地址】 【别名 ;也可以不设置,默认是仓库名。】
/*
1.组长创建中央仓库
2.组员克隆 git clone一份到本地仓库。
解决了三件事:(初始化一个本地仓库'git init',
和对应的远程仓库保持了关联"git remote add origin 【仓库地址】",
把远程仓库内容拉取到本地"git pull")后面就可以不用origin master 了。
3.小组成员要把文件传到github上,就
git add . 暂存区
git commit -m'...' 历史区
git pull/push 保持着本地仓库和中央仓库信息同步即可。
*/

团队协作思路

  • 创建一个repository。
  • 创建本地库
  • 为远程仓库配置别名&用户信息
    • 用户信息
    • git config – user.name “xxx”
    • git config –user.name “xxx”
  • 管理员推送本地仓库到远程仓库
  • 成员克隆仓库到本地
  • 成员提交合并

git clone XXX

git checkout dev

git checkout -b hhy

….做了改变。。

git add .

git commit -m “ “

git push origin hhy

  • review

    管理员设置分支的 需要 pull request

    管理员在dev的地方review,在合并。

    成员:可以new pull request。(将那个分支合并到那个分支)

    提交

    管理员:

    可以review代码

    (在网页/在线下)

    合并。

配置用户信息

参考博客

gitbash命令

1.pwd : 显示当前目录路径。
2.ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。
3.touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。
4.rm: 删除一个文件, rm index.js 就会把index.js文件删除.
5.mkdir: 新建一个目录,就是新建一个文件夹. 如mkdir src 新建src 文件夹.
6.rm -r : 删除一个文件夹, rm -r src 删除src目录, 好像不能用通配符。
7.mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下.
8.reset 清屏,把git bash命令窗口中的所有内容清空。

9.exit 可以直接退出窗口

windows命令

文件
1
2
3
4
5
6
type nul>test.txt              创建空文件
echo ‘hello world’ >test.txt 将‘hello world’写入文件中
echo ‘hahaha’ >test.txt 意味着更新test.txt中的内容为hahaha
ren test.txt test2.txt 重命名
del test.txt 删除文件
type test.txt 查看test.txt文件中的内容
文件夹
1
2
3
4
5
md test                        创建文件夹
mkdir test2 创建文件夹
rd test2 删除文件夹
ren test test1 重命名
dir 查看目录文件
其他
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
还有用以下等命令可以查看相关信息
gpedit.msc-----组策略

regedt32-------注册表编辑器

netstat -ano-----查看端口

Nslookup-------IP地址侦测器

logoff---------注销命令

calc-----------启动计算器

rononce -p----15秒关机

mem.exe--------显示内存使用情况

winmsd---------系统信息

mspaint--------画图板
1
2
3
4
node -v               查看nodejs的版本
npm -v 查看版本
cnpm -v 查看版本
java -version 查看版本,好像不能简写
文章目录
  1. 1. GIt
    1. 1.1. Git笔记
      1. 1.1.0.1. GIT工作区
      2. 1.1.0.2. 基本操作:
      3. 1.1.0.3. git传输文件https git clone与ssh git clone之间的区别
  2. 1.2. git bash基本操作
  3. 1.3. gitbash命令
  4. 1.4. windows命令
    1. 1.4.0.0.1. 文件
    2. 1.4.0.0.2. 文件夹
    3. 1.4.0.0.3. 其他
,