GitHub && Git && GitLab && 在Idea中使用Git

  • :换成你自己得到的token
  • :是你自己github的用户名
  • :是你的仓库名称

Github

github是通过Git进行版本控制的软件源代码托管服务平台,于2008年4月10日正式上线。github除了Git代码仓库托管及基本的Web管理界面以外,它还提供了一些方便社会化共同软件开发的功能,即一般人口中的社群功能,包括允许用户追踪其他用户、组织、软件库的动态,对软件代码的改动和bug提出评论等。

一.基本概念


仓库(Repository):存放项目代码,多个开源项目存放多个仓库。

收藏(star):收藏项目。

复制克隆项目(fork):该fork的项目时独立存在的,复制过来自己用

发起请求(Pull request):你新增了功能,觉得不错,想和原本项目一起

GitHub && Git && GitLab && 在Idea中使用Git_第1张图片

关注(watch):关注别人项目,及时收到更新的消息。

事物卡片(lssue):发现代码BUG,但是目前没有成型代码,需要讨论时用。

主页:(1)github(2)仓库(3)个人

二 .创建账号


第一步
在这里插入图片描述

第二步

在这里插入图片描述

第三步:点击 skip this step

三.创建仓库

一个git库(仓库)对应一个开源项目
通过git管理git库

在这里插入图片描述

仓库主页说明

在这里插入图片描述

四:仓库管理

  1. 创建文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

五.仓库主页英文介绍

1.issue 新建 2.Unwatch 关注 3. star 收藏 4.Fork 复制克隆项目

5.edit 修改 6.Create new file 创建文件 7.Upload file 上传文件
8. find files 搜索仓库文件 9. Clone or download 直接下载或通过git克隆 10. commits 提交次数,查看信息

11.Your profile 个人主页 12. Your stars 自己的收藏 13.pull requests 发起请求 13.mkdir 文件名
 9. start a project 创建一个仓库
10. Initialize this repository with a README 在仓库下多一个redme的说明文件来描述项目。
 

Git

在这里插入图片描述

二.下载地址

Git - Downloads

三.基本信息设置

进入你要存放文件的文件夹,右击点击进入Git Bash Here
注意:这里填写的是你的Github用户名和邮箱,这样在你提交的时候仓库里面就可以看到

设置用户名:
git config --global user.name 'WangTianShun'
设置用户名邮箱
git config --global user.email '[email protected]'
注意空格

  1. 创建文件夹

mkdir test  创建文件夹   

pwd 命令用于显示工作目录

    2.在文件内初始化git(创建git仓库)

cd test    #进入test文件夹

git init     #初始化git仓库

GitHub && Git && GitLab && 在Idea中使用Git_第2张图片

GitHub && Git && GitLab && 在Idea中使用Git_第3张图片

创建文件

touch a1.java

  

四.工作区域(上传文件到Github)

  1. 添加到暂存区:git add 文件名
  2. 将文件从暂存区提交到Git 仓库 :git commit -m   '提交描述'
  3. 上传 :git push

GitHub && Git && GitLab && 在Idea中使用Git_第4张图片

GitHub && Git && GitLab && 在Idea中使用Git_第5张图片

在这里插入图片描述

在这里插入图片描述

五.删除文件

  1. rm -rf 文件名      #删除文件
  2. git rm 文件名      #从git中删除文件
  3. git commit -m '提交描述     #提交操作

六. 修改文件

编辑文档 

vi 文件名;

i //键盘上敲 i,进入编辑模式

ESC //敲【ESC】键,退出编辑模式
:wq //保存退出
:q! //不保存,强制退出

修改完以后 

  1. 添加到暂存区:git add 文件名
  2. 将文件从暂存区提交到Git 仓库 :git commit -m   '提交描述'
  3. 上传 :git push

七.将Github文件克隆到Git上

  1. git clone 仓库地址 
  2. 添加到暂存区:git add 文件名
  3. 将文件从暂存区提交到Git 仓库 :git commit -m   '提交描述'
  4. 上传 :git push

GitHub && Git && GitLab && 在Idea中使用Git_第6张图片 GitHub && Git && GitLab && 在Idea中使用Git_第7张图片

多学一招:仓库地址由来

GitHub && Git && GitLab && 在Idea中使用Git_第8张图片

查看初始化信息

 git config --list

 GitHub && Git && GitLab && 在Idea中使用Git_第9张图片

GitHub && Git && GitLab && 在Idea中使用Git_第10张图片

GitHub && Git && GitLab && 在Idea中使用Git_第11张图片

将本地仓库同步到git远程仓库中 

git push

八.本人遇到的问题

1.上传时要输入账号密码(私有项目,没有权限)
解决: 

在 .git文件 里面找到config 打开
.git文件在你mkdir创建的文件夹里面

将 [remote “origin”]
url = https://github.com/用户名/仓库名.git
改为
[remote “origin”]
url = https://用户名:密码@github.com/用户名/仓库名.git

[remote “origin”]
url = https://Rodma1:[email protected]/Rodma1/test.git
保存就解决了
 

  2.上传错误 (git push)

输入:git pull --rebase origin master

3.查找问题经验

可以输入git status 查看当前状态,你在删除或者上传时漏了那一步操作 

九 .需要记住的基本操作命令

注意每个单词后都有空格
创建文件夹:mkdir 文件名
进入文件 : cd 文件名
查看文件 : ls
查看仓库状态: git status
编辑文件 : vi
查看设置:git config --list
history 显示历史输入过的命令
clear 清屏

快捷键

shift+pgup 向前翻页
shift+pgdn 向后翻页
tab 补全字母,文件名称 

GitLab

Git global setup


git config --global user.name "wangtianshun"
git config --global user.email "[email protected]"

Create a new repository


git clone http://172.18.207.98/wts/test2.git
cd test2
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Existing folder


cd existing_folder
git init
git remote add origin http://172.18.207.98/wts/test2.git
git add .
git commit -m "Initial commit"
git push -u origin master

Existing Git repository


cd existing_repo
git remote rename origin old-origin
git remote add origin http://172.18.207.98/wts/test2.git
git push -u origin --all
git push -u origin --tags
 


IDEA使用Git


1、IDEA配置git

GitHub && Git && GitLab && 在Idea中使用Git_第12张图片

1.2、添加GitHub账号

GitHub && Git && GitLab && 在Idea中使用Git_第13张图片

2、使用IDEA创建本地仓库

GitHub && Git && GitLab && 在Idea中使用Git_第14张图片

成功标志

GitHub && Git && GitLab && 在Idea中使用Git_第15张图片

3、提交时忽略不需要的配置文件

第一种方法添加.gitignore但每次都要提交

GitHub && Git && GitLab && 在Idea中使用Git_第16张图片

第二种方法配置exclude文件,不需要每次提交都要提交

GitHub && Git && GitLab && 在Idea中使用Git_第17张图片

# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
.idea
*.iml

效果

GitHub && Git && GitLab && 在Idea中使用Git_第18张图片

4、创建一个类添加到暂存区

方法一:

GitHub && Git && GitLab && 在Idea中使用Git_第19张图片

方法二:

GitHub && Git && GitLab && 在Idea中使用Git_第20张图片

5、提交到本地仓库

方法一:

GitHub && Git && GitLab && 在Idea中使用Git_第21张图片

方法二:

GitHub && Git && GitLab && 在Idea中使用Git_第22张图片

6、切换版本

6.1提交几次之后查看版本

方法一:

方法二:

GitHub && Git && GitLab && 在Idea中使用Git_第23张图片

6.2切换版本

GitHub && Git && GitLab && 在Idea中使用Git_第24张图片

GitHub && Git && GitLab && 在Idea中使用Git_第25张图片

GitHub && Git && GitLab && 在Idea中使用Git_第26张图片

效果:回到第一次创建的时候

GitHub && Git && GitLab && 在Idea中使用Git_第27张图片

7、创建分支与合并分支

7.1创建分支

GitHub && Git && GitLab && 在Idea中使用Git_第28张图片

GitHub && Git && GitLab && 在Idea中使用Git_第29张图片

GitHub && Git && GitLab && 在Idea中使用Git_第30张图片

成功:

在创建分支修改,提交

GitHub && Git && GitLab && 在Idea中使用Git_第31张图片

7.2合并分支:在master分支上合并

GitHub && Git && GitLab && 在Idea中使用Git_第32张图片

GitHub && Git && GitLab && 在Idea中使用Git_第33张图片

成功效果:

GitHub && Git && GitLab && 在Idea中使用Git_第34张图片

8、解决冲突

分支上添加了

GitHub && Git && GitLab && 在Idea中使用Git_第35张图片

主干添加了

GitHub && Git && GitLab && 在Idea中使用Git_第36张图片

合并

GitHub && Git && GitLab && 在Idea中使用Git_第37张图片

GitHub && Git && GitLab && 在Idea中使用Git_第38张图片

GitHub && Git && GitLab && 在Idea中使用Git_第39张图片

GitHub && Git && GitLab && 在Idea中使用Git_第40张图片

GitHub && Git && GitLab && 在Idea中使用Git_第41张图片

GitHub && Git && GitLab && 在Idea中使用Git_第42张图片

9、本地仓库上传到GitHub上

1、创建仓库、复制地址

GitHub && Git && GitLab && 在Idea中使用Git_第43张图片

GitHub && Git && GitLab && 在Idea中使用Git_第44张图片定义远程地址

GitHub && Git && GitLab && 在Idea中使用Git_第45张图片

GitHub && Git && GitLab && 在Idea中使用Git_第46张图片

成功

GitHub && Git && GitLab && 在Idea中使用Git_第47张图片

10、更新本地仓库

方法一:

GitHub && Git && GitLab && 在Idea中使用Git_第48张图片

GitHub && Git && GitLab && 在Idea中使用Git_第49张图片

方法二:

GitHub && Git && GitLab && 在Idea中使用Git_第50张图片

GitHub && Git && GitLab && 在Idea中使用Git_第51张图片

11、在Idea中,使用Git从GitHub克隆项目

GitHub && Git && GitLab && 在Idea中使用Git_第52张图片

GitHub && Git && GitLab && 在Idea中使用Git_第53张图片

git merge最简洁用法

一、开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支

git checkout dev
git pull
git checkout master
git merge dev
git push -u origin master

二、当master代码改动了,需要更新开发分支(dev)上的代码

git checkout master 
git pull 
git checkout dev
git merge master 
git push -u origin dev

关于Support for password authentication was removed on August 13, 2021报错的解决方案

好久没有往Github提交代码了,今天偶然提交代码的时候给报了一个remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.的错误,错误提示如下。

(yolov4) shl@zhihui-mint:~/shl_res/5_new_project/Yolov4_DeepSocial$ git push origin master
Username for 'https://github.com': shliang0603
Password for 'https://[email protected]': 
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: unable to access 'https://github.com/shliang0603/Yolov4_DeepSocial.git/': The requested URL returned error: 403
(yolov4) shl@zhihui-mint:~/shl_res/5_new_project/Yolov4_DeepSocial$

大概意思就是,你原先的密码凭证从2021年8月13日开始就不能用了,必须使用个人访问令牌(personal access token),就是把你的密码替换成token!

为什么要把密码换成token

下面是Github官方的解释: 近年来,GitHub 客户受益于 http://GitHub.com 的许多安全增强功能,例如双因素身份验证、登录警报、经过验证的设备、防止使用泄露密码和 WebAuthn 支持。 这些功能使攻击者更难获取在多个网站上重复使用的密码并使用它来尝试访问您的 GitHub 帐户。 尽管有这些改进,但由于历史原因,未启用双因素身份验证的客户仍能够仅使用其GitHub 用户名和密码继续对 Git 和 API 操作进行身份验证。

从 2021 年 8 月 13 日开始,我们将在对 Git 操作进行身份验证时不再接受帐户密码,并将要求使用基于令牌(token)的身份验证,例如个人访问令牌(针对开发人员)或 OAuth 或 GitHub 应用程序安装令牌(针对集成商) http://GitHub.com 上所有经过身份验证的 Git 操作。 您也可以继续在您喜欢的地方使用 SSH 密钥(如果你要使用ssh密钥可以参考)。

修改为token的好处:

令牌(token)与基于密码的身份验证相比,令牌提供了许多安全优势: - 唯一: 令牌特定于 GitHub,可以按使用或按设备生成 - 可撤销:可以随时单独撤销令牌,而无需更新未受影响的凭据 - 有限 : 令牌可以缩小范围以仅允许用例所需的访问 - 随机:令牌不需要记住或定期输入的更简单密码可能会受到的字典类型或蛮力尝试的影响

如何生成token

1,打开Github,在个人设置页面,找到【Setting】,然后打开找到【Devloper Settting】,如下图。

GitHub && Git && GitLab && 在Idea中使用Git_第54张图片

然后,选择个人访问令牌【Personal access tokens】,然后选中生成令牌【Generate new token】。

GitHub && Git && GitLab && 在Idea中使用Git_第55张图片

在上个步骤中,选择要授予此令牌token的范围或权限。

  • 要使用token从命令行访问仓库,请选择repo
  • 要使用token从命令行删除仓库,请选择delete_repo
  • 其他根据需要进行勾选

然后,点击【Generate token】生成令牌。

GitHub && Git && GitLab && 在Idea中使用Git_第56张图片

 

GitHub && Git && GitLab && 在Idea中使用Git_第57张图片

 生成token后,记得把你的token保存下来,以便进行后面的操作。把token直接添加远程仓库链接中,这样就可以避免同一个仓库每次提交代码都要输入token了

git remote set-url origin https://@github.com//.git
  • :换成你自己得到的token
  • :是你自己github的用户名
  • :是你的仓库名称

下面是一个实例: 

git remote set-url origin https://[email protected]/shliang0603/Yolov4_DeepSocial.git/

你可能感兴趣的:(git,intellij-idea,github)