Git使用

常用命令

1、上传本地项目到github:

1.1 github不存在的项目(即是新项目)

先new repository

在这里插入图片描述

在这里插入图片描述
然后:
(Tip:如果创建仓库时,勾选了“Initialize this repository with a README”,则不需要以下的操作)

git init

git add .

git commit -m “first commit”

git remote add origin https://github.com/用户名/项目名.git

git push -u origin master

1.2 如果是github已存在的项目,执行以下:

git status,看git是否获取到文件的更改
git add --all,将所有文件都添加到仓库,或者git add 具体文件
git commmit -m “注释语句”
git push

2、下载代码:

2.1 下载主分支代码

git clone https://github.com/用户名/项目名.git

git clone git@github.com:用户名/项目名.git

2.2 下载某一分支代码

git clone -b 分支名 地址

3、用户名和邮箱地址

3.1 查看用户名和邮箱地址:

查看用户名
git config --global user.name
查看密码 
git config --global user.password
查看邮箱
git config --global user.email
查看git版本
git --version
查看配置信息
git config --list

3.2 修改用户名和邮箱地址

修改用户名
git config --global user.name "新的用户名"
修改密码
git config --global user.password "新的密码"
修改邮箱
git config --global user.email "新的邮箱"
 
用户名过多时:
git config --global --replace-all user.name "用户名"
git config --global --replace-all uesr.email "邮箱"

4、分支

1、查看本地分支

git branch

2、查看远程分支

git branch -a

3、切换分支

3.1、切换分支

git checkout newXX

3.2、创建新分支并切换到该分支
git checkout -b newXX

4、把新创建的分支推送到远程仓库命令

两种方式:

(1)比较暴力的方式:git push origin xxBranch推向指定的分支,这样做每次push都必须指定具体分支。

git push origin xxBranch

(2)使用关联远程分支,关联有一个好处,以后就不用每次git push都用第(1)种方法。

git push --set-upstream origin xxBranch

之后再推送代码就可以直接使用:git push

5、删除分支

5.1 删除远程分支
git push origin --delete <分支名>
5.2 删除本地分支
git branch -d <分支名>

6、查看版本提交记录

查看分支提交历史
git log 
或查看某几条:
git log -2 
查看某文件提交历史

git log --pretty=oneline xxx/xxx/xx.log

查看commit提交记录详情

git show commit_id

7、撤销

7.1 撤消add,没commit

git status 先看一下add 中的文件(绿色的)
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD xxx.java 就是对某个文件进行撤销了

7.2 撤消commit,只commit没push.

git reset commit_id (回退到上一个 提交的节点 代码还是原来你修改的)
git reset –-hard commit_id (回退到上一个commit节点, 代码也发生了改变,变成上一次的)

7.3 撤销push

输入 git log: 找到错误提交之前的git push的 commit_id (即正确时候的commit_id)

输入

git reset --hard <commit_id>

git push origin HEAD --force

8、git merge某分支

在这里插入图片描述

merge冲突了,Git告诉我们,test.txt文件存在冲突,必须手动解决冲突后再提交。git status也可以告诉我们冲突的文件

<<<<<<< HEAD
Creating a new branch is quick & simple.
=======
Creating a new branch is quick AND simple.
>>>>>>> first

Git用<<<<<<<=======>>>>>>>标记出不同分支的内容(HEAD为当前分支),我们vim修改后保存、提交。

$ git add test.txt
$ git commit -m 'conflict fixed'
[master 22e2f60] conflict fixed

用带参数的git log也可以看到分支的合并情况:

$ git log --graph --pretty=oneline --abbrev-commit
*   22e2f60 conflict fixed
|\
| * e4a0083 merge
* | b5f0f2a 1111
|/
* 00ec932 committest
* 25851fc test11
* 7f89ecd test1
* 5701988 Initial commit

基本概念

工作原理 / 流程

在这里插入图片描述

  • Workspace:工作区
  • Index / Stage:暂存区
  • Repository:仓库区(或本地仓库)
  • Remote:远程仓库

工作区(Working Directory

就是你在电脑里能看到的目录,比如上文中的 demo 文件夹就是一个工作区

本地版本库(Local Repository

工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。

暂存区(stage

本地版本库里存了很多东西,其中最重要的就是称为 stage(或者叫index)的暂存区,还有 Git 为我们自动创建的第一个分支 master,以及指向 master 的一个指针叫 HEAD

远程版本库(Remote Repository

一般指的是 Git 服务器上所对应的仓库,本文的示例所在的github仓库就是一个远程版本库

分支(Branch

分支是为了将修改记录的整个流程分开存储,让分开的分支不受其它分支的影响,所以在同一个数据库里可以同时进行多个不同的修改

主分支(Master

前面提到过 masterGit 为我们自动创建的第一个分支,也叫主分支,其它分支开发完成后都要合并到 master

标签(Tag

标签是用于标记特定的点或提交的历史,通常会用来标记发布版本的名称或版本号(如:publish/0.0.1),虽然标签看起来有点像分支,但打上标签的提交是固定的,不能随意的改动,参见上图中的1.0 / 2.0 / 3.0

在这里插入图片描述

HEAD

HEAD 指向的就是当前分支的最新提交

在这里插入图片描述

常见问题

Github无法加载或不显示图片问题

  1. Mac终端输入
    sudo vi /etc/hosts
  2. 输入密码后,点击 i键,进入Insert模式,将下面内容拷贝进去
140.82.114.4 github.com
140.82.114.4 gist.github.com
185.199.108.153 assets-cdn.github.com
151.101.64.133 raw.githubusercontent.com
151.101.108.133 gist.githubusercontent.com
151.101.108.133 cloud.githubusercontent.com
151.101.108.133 camo.githubusercontent.com
151.101.108.133 avatars0.githubusercontent.com
151.101.108.133 avatars1.githubusercontent.com
151.101.108.133 avatars2.githubusercontent.com
151.101.108.133 avatars3.githubusercontent.com
151.101.108.133 avatars4.githubusercontent.com
151.101.108.133 avatars5.githubusercontent.com
151.101.108.133 avatars6.githubusercontent.com
151.101.108.133 avatars7.githubusercontent.com
151.101.108.133 avatars8.githubusercontent.com 
  1. 点击esc 键,然后输入:wq 保存退出即可。
  2. 再去打开或刷新Github页面,图片已经可以加载出来了。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值