git的使用

1,git 创建用户名(用户信息配置)

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

2,查看当前用户是谁:

git config --get user.name
git config user.name

#添加用户

git config --global user.name zhang1

查看所有用户信息

git config --list --global

#删除用户

git config --global --unset user.name 用户名

#查看配置信息

git config --list

3,初始化

初始化空目录,使git可以管理该仓库(对现有的某个项目开始用 Git 管理,只需到此项目所在的目录,执行git init)

git init

新建一个目录,将其初始化为Git代码库

git init [project-name]

4,添加文件到缓存区

git add <file>

git add .  #添加文件夹到缓存区

5,提交文件到本地仓库

(引号内为解释说明,便于以后再使用查找方便)

git commit -m 'explain message' 

6,查看全部文件版本(查看git提交的日志)

git log

7,查看全部文件版本号commit id

(一般使用时用id的前7位就可以了)

git log --pretty=oneline

8,文件回滚

(查找当前文件的上一版本)

 git reset --hard HEAD^ 

#HEAD^指的是上一个版本,HEAD指的是当前版本
HEAD is now at e475afc add distributed #回滚版本的版本号e475afc, add distributed为时提交的解释信息

9,文件跳转

(指定回到某个文件版本,想完全丢弃最近修改)

git reset --hard <commit—id>

#如果你想重置到某一版本,可以将 --hard 改为具体的Commit_id

git reset 1d7f5d89346

#查看在操作之前的操作信息(1,回滚到上一个版本后,查看最新版本的commit—id,以便回归最新版本;2,查看命令历史)

git reflog

9,git的运行区域

#1,工作区(Working Directory)
#你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区
#2,版本库(Repository)
#工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库
#Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的缓存区,
#还有Git为我们自动创建的第一个分支master
#以及指向master的一个指针叫HEAD。
#3,查看文件状态

git status

#4,管理修改
‘’’
1)Git跟踪并管理的是修改,而非文件。

2)什么是修改?比如你新增了一行,这就是一个修改,删除了一行,也是一个修改
更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改,
甚至创建一个新文件,也算一个修改。

3)第一次修改——git add ——第二次修改——git commit
Git管理的是修改,当你用git add命令后,在工作区的第一次修改被放入暂存区,
准备提交,但是,在工作区的第二次修改并没有放入暂存区,还在工作区
所以,git commit只负责把暂存区的修改提交了,也就是第一次的修改被提交了
,第二次的修改不会被提交

4)那怎么提交第二次修改呢?你可以继续git add再git commit,也可以别着急提交第一次修改,
先git add第二次修改,再git commit,就相当于把两次修改合并后一块提交了
第一次修改 -> git add -> 第二次修改 -> git add -> git commit
每一次修改git add,再提交git commit
如果修改后,git add ,再修改(再修改没有git add,即再修改没有添加到缓存区),直接提交git commit,那么当前文件版本就有
修改后的内容,没有再修改的内容
‘’’

10,从现有远方仓库克隆项目

#通过HTTPS协议克隆(test项目)

git clone https://gitee.com/xx/test.git/

#通过SSH协议克隆(test项目)

git clone git@gitee.com:xxx/test.git

11,如何配置ssh key

1), ls ~/.ssh/ --检查SSH key是否已经存在,如果存在,就不用生成一个新的SSH key了,直接跳到下面的第3步。

2),ssh-keygen -t rsa -b 2048 -C 'your emaill address'
回车后输出如下:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/xxx/.ssh/id_rsa):
其中,/Administrator是你的用户名,直接回车,会将key保存到默认文件中
接着会输出:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
这两步是让你输入一个密码123456,以及确认密码123456,这个密码在你提交代码到Github/gitee时会用到【注意:记住这个密码,最简单的方式就是设置的和github/gittee账户登入密码一样,容易记住】
回车后就提示成功了:
Your identification has been saved in /home/xxx/.ssh/id_rsa.
Your public key has been saved in /home/xxx/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
到这一步,你会发现 ~/.ssh/id_rsa.pub 文件已经生成了。

3),先确认ssh-agent处于启用状态:

eval "$(ssh-agent -s)"

输出类似于:
Agent pid 32070
然后将SSH key添加到ssh-agent:

ssh-add ~/.ssh/id_rsa

这时又会要你输入密码123456:
Enter passphrase for /home/xxx/.ssh/id_rsa:
输入刚才记起来的密码,然后回车
4),将SSH key添加到Github账户中
直接在打开id_rsa.pub这个文件(这就是我们刚刚生成的ssh key文件),
一般大致路径如下(每个人电脑不同,路径也会不同):系统盘符 —- 用户名 —- 计算机用户名 —-.ssh ,
在这里名就可以看到 id_rsa、id_rsa.pub 、known_host这三个文件,打开id_rsa.pub,
将里面的内容原样全部复制起来。打开github.com,登入账户,点击头像旁边的下拉按钮,
选择settings —- ssh and gpg keys —— new ssh key —- 粘贴 —- 保存
5),保存后,就能在上面看见刚建立的ssh key,之后在git 客户端就能够使用了git pull,clone

12,上传远程仓库

#1查看您要同步的仓库的远程仓库列表

git remote -v   

#5.2 将本地的Git仓库信息推送上传到服务器
git push https://gitee.com/***/test.git #***为个人空间

git push -u origin master --origin为远程仓库 master为本地分支

git push origin master

#设置远程仓库以及远程仓库地址(添加远程仓库)

git remote add 远程仓库 远程仓库地址

#修改远程仓库名

git remote rename origin oschina #origin为当前远程仓库,oschina为重命名后的远程仓库

#修改仓库对应的远程仓库地址

git remote set-url origin 仓库地址 #origin为远程仓库,仓库地址为修改后的对应地址

#从远程仓库拉取到本地git仓库

git pull origin master 

origin代表的是你远程的仓库,master是分支名

13,分支的使用

#创建分支

git branch branch_name

#查看分支

git branch

#切换分支

git checkout branch_name
git switch branch_name

#创建分支并切换分支

git checkout -b branch_name
git switch -c  branch_name

#合并某分支到当前分支

git merge branch_name

#删除分支

git branch -d branch_name

14,删除版本仓库的文件

git rm (无法恢复)
#删除工作区的仓库
rm (可恢复)
#恢复删除文件到最新版本
git checkout –

#退出(Ctrl + c)
exit

15,标签tag

(你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签)

git tag -a tag_name

for example :git tag -a v1.0

git log --decorate (查看标签)

如果我们忘了给某个提交打标签,又将它发布了,我们可以给它追加标签。

例如,假设我们发布了提交 85fc7e7(上面实例最后一行),但是那时候忘了给它打标签。 我们现在也可以:
git tag -a v0.9 85fc7e7 ###其中v0.9为追加标签,85fc7e7为提交id

#查看所有的标签

git tag

16,合并某分支到当前分支

git merge 某分支
git status 查看状态

17,合并冲突的处理

#发生冲突(某行有重复的内容)
#解决方法,1,保存当前分支2,保存某分支3,都保存
#git add <file_name>
#git commit -m ‘conflict fix’
git log --graph #查看详细流程图
git log --graph --pretty=oneline --abbrev-commit #查看提交commit流程图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值