Git的使用(通过命令行, Eclipse, IDEA, Docker)

简介: 一. 通过命令行使用Git(以Windows为例) 安装Git-2.12.2.2-64-bit.exe 任何目录下, 右键, Git Bash Here 初次安装git配置用户名和邮箱 git config --global user.

一. 通过命令行使用Git(以Windows为例)

1.安装Git-2.12.2.2-64-bit.exe

2.任何目录下, 右键, Git Bash Here

3.初次安装git配置用户名和邮箱

git config --global user.name "paul"
git config --global user.email "paulandcode@gmail.com"

4.查看是否已有ssh公钥

type %userprofile%\.ssh\id_rsa.pub

若没有, 则会提示找不到文件

5.若没有, 则去生成公钥

ssh-keygen -t rsa -C "paulandcode@gmail.com" -b 4096

生成过程中会让你设置公钥路径, 直接回车使用默认路径即可
还会让你设置密码, 若不设置密码, 则直接回车即可

6.添加公钥到远程仓库

cat ~/.ssh/id_rsa.pub

上面的命令会获得公钥, 然后需要你手动将公钥添加到远程仓库(如GitHub)

7.若是搭建的gitlab私服,则连接仓库时会提示无法解析主机名, 此时要在C:/Windows/System32/drivers/etc下的hosts文件中加入一行代码

192.168.0.233 gitlab.ywz.com

8.若本地没有原始代码, 需要从远程Git仓库下载原始代码到本地

cd new_folder
git clone ssh://git@github.com:paulandcode/blogs.git

9.若本地有原始代码, 远程Git仓库没有原始代码, 需要将原始代码上传到远程仓库. 若使用GitHub, 最好加上README.md, .gitignore, LICENSE这几个基本文件.

cd existing_folder
git init
git remote add origin https://github.com/paulandcode/paulandcode_lucene.git
git add .
git commit -m "Initial commit"
git push -u origin master

若提示: fatal: remote origin already exists, 则移除后再添加Git仓库

git remote rm origin

10.同步远程Git仓库代码到本地

git pull --rebase origin master

11.提交代码到本地Git仓库

git add test.html
git commit -m "Commit test.html"

12.提交本地Git仓库代码到远程Git仓库

git push -u origin master

二. 通过Eclipse使用Git

1.Window --> Show View --> Other...
01

2.搜索git, 选择Git Repositories
02

3.先复制好Git的仓库路径(如: git@github.com:paulandcode/blogs.git), 然后在Eclipse弹出的窗口粘贴路径, 最后一直点击下一步, 并选择本地项目保存路径即可下载整个项目到本地.
03
04

4.更新代码
选中要更新的文件夹点击右键 --> Team --> Pull (将服务器中新增的代码拉到本地, 若有冲突, 则会报错, 只会拉到在本地git仓库, 不会拉到本地代码中, 并且在项目名右侧会有↓提示, 例:offweb[offweb master ↓1], 这表示本地git仓库有1个文件等待拉取)

5.提交代码
选中要提交的文件夹点击右键 --> Team --> Add to Index --> Commit And Push(将本地代码提交到git服务器, 若有冲突, 则会报错, 只会提交到在本地git仓库, 不会提交到git服务器, 并且在项目名右侧会有↑提示, 例:offweb[offweb master ↑1], 这表示本地git仓库有1个文件等待提交)

6.解决冲突
不论是先Pull还是先Push, 都有一个规律:只有Pull之后才会出现冲突信息, 只有出现冲突信息后, 下一个push才可以提交成功. 所以解决冲突分三步: 第一步, Pull后出现冲突信息(Pull --> Push --> Pull 或者 Push --> Pull); 第二步, 解决冲突; 第三步, Push

7.使用Eclipse自带的Merge Tool解决冲突
选中项目根文件夹点击右键 --> Team --> Synchronize Workspace(与资源库同步) --> 有冲突的代码处(红色双向箭头)右键Merge Tool解决冲突 --> 解决完后右键Add to Index --> Commit And Push

三. 通过IDEA使用Git(IDEA, PyCharm, AndroidStudio等这些套路都类似)

1.在IDEA上通过Git或者GitHub检出项目
01
02

2.更新和提交
(1) 按键
03
上图5个按键分别是:更新、提交、比较、历史、Revert

(2) 文件类型
白:无修改;蓝:修改; 红:新增未Add Git; 绿:新增Add to Git
04

(3) 更新
点击更新后,请在Event Log页面查看结果(可能有种种原因更新失败)
05

(4) 提交
1> 点击Commit 按钮, 会直接提交至本地库. 更新至远程库需要再Push一次: VCS --> Git --> Push

2>点击Commit and Push: 提交到本地, 并且提交到远程仓库, Commit and Push按钮的位置在提交页面Commit按钮旁边的下拉箭头
06

(5) 比较
在History中右键compare
07

四. docker搭建GitLab的docker-compose.yml文件

version: "3.5"

services:
 gitlab:
  image: gitlab/gitlab-ce:10.5.4-ce.0
  restart: always
  container_name: gitlab
  ports:
   - "8085:80"
   - "2222:22"
  hostname: "gitlab.ywz.com"
  environment:
   GITLAB_OMNIBUS_CONFIG: |
    gitlab_rails['gitlab_shell_ssh_port'] = 2222
  volumes:
   - type: volume
     source: config
     target: /etc/gitlab
   - type: volume
     source: logs
     target: /var/log/gitlab
   - type: volume
     source: data
     target: /var/opt/gitlab

volumes:
 config:
  name: gitlab_config
 logs:
  name: gitlab_logs
 data:
  name: gitlab_data

五. .gitignore文件

.mymetadata
.checkstyle
.classpath
.project
.class
.war
.zip
.rar
.idea
*.iml
*.py[cod]
.settings/*
/indexes/*
/src/main/webapp/WEB-INF/classes/*
/src/main/webapp/userfiles/*
*/target/
*/target/*

小知识: Windows如何新建以"."开头的文件(如.gitignore文件)
情况: Windows下, 如果新建以"."开头的文件, 会提示: 必须键入文件名.
解决: 在文件名后面再加个".", 例如".gitignore.", 则可以新建.gitignore文件

相关文章
|
25天前
|
Linux Android开发 Windows
IDEA如何设置成Eclipse的快捷键
【10月更文挑战第9天】这段内容介绍了如何在 IntelliJ IDEA 中设置类似 Eclipse 的快捷键。主要包括:1) 打开设置;2) 进入快捷键设置页面;3) 选择 Eclipse 快捷键方案;4) 可选的自定义调整。通过这些步骤,可以让熟悉 Eclipse 的用户更快适应 IDEA。
200 4
|
2月前
|
开发工具 git
IDEA更改远程git仓库地址
【9月更文挑战第27天】本文介绍了两种在IntelliJ IDEA中更改远程Git仓库地址的方法:一是通过图形界面,在VCS设置中直接修改;二是通过IDEA内置的命令行工具使用`git`命令进行更改。具体步骤包括从版本控制菜单进入项目设置、修改远程仓库URL,以及使用`git remote set-url`命令更新仓库地址,并验证修改结果。这些方法适用于项目迁移或更换仓库地址的情况。
438 6
|
23天前
|
Java Shell 开发工具
git集成IDEA,托管项目实现版本管理
git集成IDEA,托管项目实现版本管理
30 0
|
2月前
|
Shell 网络安全 开发工具
Git,GitHub,Gitee&IDEA集成Git
Git提交项目到GitHub简洁版、版本控制、安装、常用命令、分支、团队协作机制、Github、Gitee远程仓库、IDEA集成Git、IDEA集成Github、IDEA集成Gitee
Git,GitHub,Gitee&IDEA集成Git
|
3月前
|
缓存 Java 应用服务中间件
支付宝 网站支付Demo 案例【沙箱环境】IDEA如何配置启动Eclipse项目
该博客文章讲述了如何在IntelliJ IDEA中配置和启动一个使用Eclipse开发的支付宝网站支付Demo案例。文章详细记录了从导入项目到配置Tomcat,再到解决启动过程中遇到的问题的步骤。作者还分享了在IDEA中遇到的一些常见问题,如项目配置、依赖库添加、编码问题等,并提供了相应的解决方案。此外,文章还提供了支付效果的展示以及一些支付宝案例文档中需要修改的参数信息。
支付宝 网站支付Demo 案例【沙箱环境】IDEA如何配置启动Eclipse项目
|
3月前
|
安全 开发工具 git
coding上创建项目、创建代码仓库、将IDEA中的代码提交到coding上的代码仓库、Git的下载、IDEA上配置git
这篇文章是关于如何在IDEA中配置Git、在Coding.net上创建项目和代码仓库,并将IDEA中的代码提交到远程代码仓库的详细教程,涵盖了Git安装、IDEA配置、项目创建、代码提交等步骤。
coding上创建项目、创建代码仓库、将IDEA中的代码提交到coding上的代码仓库、Git的下载、IDEA上配置git
|
3月前
|
开发工具 git
IDEA中怎么使用git下载项目到本地,通过URL克隆项目(giteegithub)
IDEA中怎么使用git下载项目到本地,通过URL克隆项目(giteegithub)
215 0
|
3月前
|
Kubernetes jenkins 持续交付
Jenkins + SVN/Git + Maven + Docker + 阿里云镜像 + Kubernetes(K8S)
Jenkins + SVN/Git + Maven + Docker + 阿里云镜像 + Kubernetes(K8S)
121 0
|
4月前
|
开发工具 git 开发者
git IDEA的分支合并时的冲突问题总结,merge和rebase的区别
冲突的处理需要开发者之间的充分沟通以及对项目历史的细致理解。选择Merge或Rebase取决于具体的工作流程和团队偏好,但最重要的是保持代码库的整洁与一致性。使用IDEA等工具可以提高处理合并冲突的效率,但手动解析冲突和理解操作背后的逻辑仍然是不可或缺的。最终目标是通过有效的版本控制实践,促进项目的顺利进行和团队协作的高效。
277 0
|
4月前
|
开发工具 git
在idea里如何实现Git项目回滚
在idea里如何实现Git项目回滚