git初级java项目_Git初学者教程

git初级java项目

1.什么是Git?

Git是一种流行的文件版本控制系统,在全球范围内被众多开发人员用于其项目。 与同类产品相比,它的重量轻且性能Swift。 借助许多基于UI的工具来协助基于Git的版本控制,开发人员使用Git版本控制系统变得极为方便。 Git标榜了诸如廉价本地分支,方便的暂存区域和多种工作流配置之类的功能。

在本文中,我们将特别关注使用Git的入门,并介绍一些简单项目所需的一些基本命令。 本文涵盖了版本控制期间可能出现的所有可能情况。 但是,在开始之前,有必要在系统上安装Git版本控制系统(VCS)。

2. Git安装

要将Git安装到您的系统中,请遵循以下步骤:

2.1在Windows和MacOS中安装Git

  1. 转到Git VCS主页
  2. 您应该能够找到可用的最新Git版本的下载按钮
  3. 下载并安装相同的

为了验证安装,请在命令提示符(Windows)或终端(Mac OS)中输入以下命令。

$ git --version

如果安装正常,将出现如下所示的输出。

Git版本检查

2.2在Linux中安装Git Core

Git没有为Linux提供准备安装的安装文件。 因此,有另一种方法来安装它。 从终端执行以下命令以安装git-core软件包。

$ sudo apt-get install git-core

这将执行所有必要的步骤,一旦准备就绪,请按照以下步骤验证安装。

在“终端”窗口中输入以下命令。

$ git --version

如果安装正常,将出现如上所示的输出。

Git版本检查

3.从Git版本开始

一旦完成安装和验证,就可以开始使用Git进行第一个项目版本控制了。 我们将在此处使用虚拟Java项目来更好地了解项目的文件版本控制。 您可以使用任何流行的IDE来创建Java项目并开始使用。 这里使用的IDE是Eclipse IDE。 但是,对于命令的执行,我们将严格限制于命令行工具。

3.1创建和初始化Git存储库

为了将项目配置为使用基于Git的版本控制系统,您要做的就是将项目目录初始化为GIT存储库。 使用首选的IDE在所需的目录中创建Java项目。

现在,打开您的终端,并使用流行的cd命令将目录更改为项目目录。

$ cd /path/to/project

要初始化Git存储库,执行命令git init 。 如下所示的输出应该是可见的。

$ git init
Initialized empty Git repository in /Users/abhishekkothari/Desktop/JavaCodeGeeks/GitBeginners/GitBeginner/.git/

可以看出,在项目文件夹中创建了一个.git目录。 此文件夹跟踪本地发生的所有更改。 您可以使用git status命令检查目录git status 。 它应提供类似于以下所示的输出。 如果您使用其他IDE,则可能会有所不同。

$ git status
On branch master

No commits yet

Untracked files:
  (use "git add ..." to include in what will be committed)

	.classpath
	.project
	.settings/
	bin/
	src/

3.2从文件版本控制开始

现在,在项目中,创建一个Java文件,如下所示。

SayHello.java

package com.javacodegeeks;

public class SayHello {
	public static void main(String[] args) {
		System.out.println("Hello there!");
	}
}

IDE可能会显示软件包错误。 如果不需要,请随时删除包装声明。 创建文件后,我们需要将文件添加到GIT索引中。 这将确定此后跟踪文件的更改。 要将文件添加到索引,请执行命令git add /path-to-file/SayHello.java 。 该命令将没有反馈。 但是,您可以检查状态以确定文件已添加到索引中。
检查状态时,将显示类似于以下所示的输出。

$ git add src/com/javacodegeeks/SayHello.java 
$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached ..." to unstage)

	new file:   src/com/javacodegeeks/SayHello.java

Untracked files:
  (use "git add ..." to include in what will be committed)

	.classpath
	.project
	.settings/
	bin/

该流程的下一步是将文件实际提交到存储库。 提交文件意味着存储库中文件的当前版本将被覆盖。 可以使用命令git commit 。 也可以添加描述正在提交的更改的注释。 为此,请执行如下所示的命令。

$ git commit -m "First File Committed"

这将提交在跟踪中提及注释“ First File Committed ”的文件 。 类似于以下所示的输出应该是可见的。

$ git commit -m "First File Committed"
[master (root-commit) 9cce524] First File Committed
 1 file changed, 7 insertions(+)
 create mode 100644 src/com/javacodegeeks/SayHello.java

3.3处理多个文件

当有多个文件要使用时,通常使用文件版本控制。 因此,当然需要有一种方法可以轻松地处理多个文件,而不是为每个要执行索引的git add file-name执行git add file-name 。 为了理解它们,让我们再创建两个简单的Java文件,如下所示。

EvenNumbers.java

package com.javacodegeeks;

public class EvenNumbers {
	public static void printEvenNumber(int i) {
		System.out.println("Even numbers upto "+i);
		for(int x=0;x<i;x=x+2)
			System.out.println(x);
	}
}

OddNumbers.java

package com.javacodegeeks;

public class OddNumbers {
	public static void printOddNumber(int i) {
		System.out.println("Odd numbers upto "+i);
		for(int x=1;x<i;x=x+2)
			System.out.println(x);
	}
}

现在,我们需要将这两个文件添加到索引中,而无需为每个文件执行命令。 为此,有两种方法。 当您特别希望添加具有特定扩展名的文件时,其中之一非常有用。 例如,

$ git add *.java

上面的命令会将所有扩展名为.java的文件添加到暂存中。 暂存是保存文件版本直至提交的区域。 另一种可能的方法是使用以下命令添加项目中存在的所有文件。

$ git add -A

此命令将处理所有文件-新建,修改和删除。 现在,如下所示修改文件SayHello.java

SayHello.java

package com.javacodegeeks;

public class SayHello {
	public static void main(String[] args) {
		System.out.println("Hello there!");
		EvenNumbers.printEvenNumber(11);
		OddNumbers.printOddNumber(12);
	}
}

现在执行以上命令之一,将所有Java文件添加到登台区域,然后检查状态。 状态应类似于以下所示:

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD ..." to unstage)

	new file:   src/com/javacodegeeks/EvenNumbers.java
	new file:   src/com/javacodegeeks/OddNumbers.java
	modified:   src/com/javacodegeeks/SayHello.java

Untracked files:
  (use "git add ..." to include in what will be committed)

	.classpath
	.project
	.settings/
	bin/

如果您使用命令git add -A ,它也会将所有空目录也添加到索引中。 如果这不是预期的,则可以通过执行git reset轻松撤消移动到舞台的操作。 它将重置已执行的添加操作,并将登台恢复为先前的提交。 将提供类似于以下所示的输出。

$ git reset
Unstaged changes after reset:
M	src/com/javacodegeeks/SayHello.java

重置后,您可以将所需的文件添加到暂存中,并在一切正常后提交。

3.4连接到远程存储库

在上述步骤中跟踪和存储的更改均在本地跟踪。 目前,这些文件尚不在线供其他开发人员使用。 为了使其他开发人员能够访问或克隆代码,将本地代码库连接到远程存储库很重要。 为此,您需要首先在流行的Git托管平台(例如GitHub)上创建在线存储库。 对于本文,我在Github上创建了一个存储库GitBeginner 。 要将本地文件连接到存储库,请执行以下命令。

$ git remote add origin https://github.com/datsabk/GitBeginner.git

该命令将没有反馈。 但是,您可以使用以下命令检查连接是否成功。

$ git remote show origin
* remote origin
  Fetch URL: https://github.com/datsabk/GitBeginner.git
  Push  URL: https://github.com/datsabk/GitBeginner.git
  HEAD branch: (unknown)

现在,本地文件已连接到远程存储库,是时候将文件推送到存储库了。 为此,请执行以下命令:

$ git push -u origin master
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (6/6), 471 bytes | 157.00 KiB/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To https://github.com/datsabk/GitBeginner.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

如果您没有为用户详细信息配置Git,则会提示您输入相应托管帐户的凭据。 您可以按照以下链接中的步骤配置Git用户名和密码。

3.5 Git分支和合并

在大型项目中,开发人员通常不在公共分支上工作。 每个开发人员都针对他们正在开发的功能或他们试图解决的错误创建一个分支。 本节介绍创建分支并将其合并到主分支的过程。

首先,让我们创建一个本地分支。 为了创建一个新的本地分支,执行命令git checkout -b newbranch 。 这将创建一个新的本地分支并切换到该分支。 将提供类似于以下所示的输出。

$ git checkout -b newbranch
M	src/com/javacodegeeks/SayHello.java
Switched to a new branch 'newbranch'

现在,让我们在SayHello.java更改一些代码,如下所示:

SayHello.java

package com.javacodegeeks;

public class SayHello {
	public static void main(String[] args) {
		System.out.println("Hello there!");
		System.out.println("Printing even numbers");
		EvenNumbers.printEvenNumber(11);
		System.out.println("Printing odd numbers");
		OddNumbers.printOddNumber(12);
	}
}

开发人员有时需要检查远程存储库中文件之间的差异。 只要需要,只需执行命令git diff来检查所有修改。 类似于以下所示的输出将打开。

$ git diff
diff --git a/bin/com/javacodegeeks/SayHello.class b/bin/com/javacodegeeks/SayHello.class
index 0e9d8e3..6c45444 100644
Binary files a/bin/com/javacodegeeks/SayHello.class and b/bin/com/javacodegeeks/SayHello.class differ
diff --git a/src/com/javacodegeeks/SayHello.java b/src/com/javacodegeeks/SayHello.java
index 815b53a..4276f44 100644
--- a/src/com/javacodegeeks/SayHello.java
+++ b/src/com/javacodegeeks/SayHello.java
@@ -3,7 +3,9 @@ package com.javacodegeeks;
 public class SayHello {
        public static void main(String[] args) {
                System.out.println("Hello there!");
+               System.out.println("Printing Even numbers");
                EvenNumbers.printEvenNumber(11);
+               System.out.println("Printing Odd numbers");
                OddNumbers.printOddNumber(12);
        }
 }

可以注意到,有+号表示添加了两行。 对于.class文件,Git无法将它们作为文本读取,因为它们是二进制字节码。 因此,它只是说它们与先前的承诺不同。 现在,该推送这些更改并将其合并到master分支了。 将更改推送到远程存储库的过程保持不变。 执行如下命令:

$ git commit -m "Added two lines"
[newbranch 3f7d0cb] Added two lines
 1 file changed, 2 insertions(+)
MacBook-Air:GitBeginner abhishekkothari$ git push -u origin newbranch
Counting objects: 24, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (18/18), done.
Writing objects: 100% (24/24), 3.09 KiB | 791.00 KiB/s, done.
Total 24 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), done.
To https://github.com/datsabk/GitBeginner.git
 * [new branch]      newbranch -> newbranch
Branch 'newbranch' set up to track remote branch 'newbranch' from 'origin'.

现在,已在远程存储库上创建了新分支,并将更改推送到该分支。 但是,这些更改在master分支中尚不可用。 为了将这些更改拉入master分支,请使用Github UI提出合并请求,如下所示。

提出合并请求

提出合并请求后,授权人员可以接受该请求并将更改拉到主存储库中并使其对其他人可用。 在大型项目中,合并期间经常会发生冲突。 当其他开发人员已经将更改合并到您要合并的文件中时,就会发生冲突。 在这种情况下,Git无法确定是应覆盖还是合并更改。

通过在master分支中编辑SayHello.java文件,在上述pull请求中生成了一个冲突的场景,如下所示:

SayHello.java

package com.javacodegeeks;

public class SayHello {
	public static void main(String[] args) {
		System.out.println("Hi there!");
	}
}

完成此更改后,拉取请求将显示冲突,如下所示:

在Git中合并冲突

通过单击“解决冲突”并选择合并后需要写入文件的代码,可以以交互方式解决这些冲突。 这样的冲突有时可能具有挑战性。 因此,建议以增量方式对文件进行最新更改,以避免大量冲突代码。 可以使用以下命令来提取任何特定分支的最新更改:

$ git fetch origin
$ git merge origin/master

第一个命令将提取各个分支的最新更改。 下一条命令完成将获取的更改合并到本地文件中的工作。

3.6忽略某些文件

在之前的操作中,我们坚持使用git add *.java命令。 但是,并非总是如此。 在某些情况下,我们可能希望仅忽略某些文件而不是全部文件。 在这种情况下,以下命令会派上用场。

$ git rm -r --cached *.class

在执行上述命令然后检查存储库的状态时,您会发现类文件现在已被忽略,并且git status的输出类似于以下所示。

$ git status
On branch newbranch
Your branch is up to date with 'origin/newbranch'.

Changes to be committed:
  (use "git reset HEAD ..." to unstage)

	deleted:    bin/com/javacodegeeks/EvenNumbers.class
	deleted:    bin/com/javacodegeeks/OddNumbers.class
	deleted:    bin/com/javacodegeeks/SayHello.class

Untracked files:
  (use "git add ..." to include in what will be committed)

	bin/

它指示从跟踪列表中删除了类文件,并且现在不跟踪bin文件夹。 因此,文件现在位于忽略列表中。 可以在项目目录中的.gitignore文件中找到此列表。

4。结论

本文以初学者的方式深入介绍了为项目创建和管理Git存储库的完整过程。 它捕获了开发人员可能遇到的基本问题或功能。 未来将面临复杂的挑战。 但是,由于Git是流行的版本控制系统,因此应该有足够的帮助。

5.参考

翻译自: https://www.javacodegeeks.com/2018/03/git-tutorial-for-beginners.html

git初级java项目

FUEL算法解读(一)——框架解读,思维导图可以很清晰看懂算法启动框架,已更新完,图太大放不上来链接在文末 一图看懂FUEL算法节点框架!!! 阅读详情

相关推荐

IDEA 中使用 Git 图文教程详解

IDEA 下配置 Git 【1】注册 Gitee 码云账号 【2】安装 Gitee 码云插件 【3】Version Control 中 GitGitee 配置 【4】Git 签名设置 【5】项目推送到 Git 仓库并分享给用户 【6】项目修改后,更新远程仓库 【7】从 Git 中拉取远程项目代码到 IDEA 中 【8】项目历史版本的查看和恢复

不迁怒,不贰过。小知识,大智慧。 5125

Git命令使用笔记

Git中文件管理三种状态: 已修改(modified) 在工作目录中修改Git文件 已暂存(staged) 对已经修改的文件执行暂存操作,存入暂存区 已提交(committed) 将已暂存的文件执行Git提交操作,存入本地版本库 Git安装 Linux: sudo apt-get install git Mac: 安装命令行工具(如已安装Xcode,命令行工具

Hello 我的 2257

Eclipse IDE中向Git添加Java项目教程

htmltable {th, td {th {pre {简介:版本控制是IT团队协作的关键,Git作为主流的分布式版本控制系统受到广泛使用。本教程详细介绍了在Eclipse集成开发环境中将Java项目添加到Git仓库的过程。涵盖安装EGit插件、创建和导入Java项目、配置Git仓库、初始化Git、添加文件、提交更改、协同开发、以及EGit设置等多个实践步骤。掌握这些步骤对于进行有效的版本管理和团队协作至关重要。

weixin_42603332的博客 661

git remote命令入门

添加远程版本库 git remote add [shortname] [url] # 添加远程仓库 git remote add origin https://github.com/xx/hbase.git # 创建主分支 git branch -M main # 推送到远程仓库origin的main分支 git push -u origin main 查看远程版本库 $ git remote -v origin https://github.com/xx/hbase.git (fetch) ori

鸭梨的博客 551

git clone 远程分支

有时git clone下来会出现很多branch,更麻烦的是如果主分支没代码那你就只能看到.git目录了。如下面的这个: $ git clonegit://gitorious.org/android-eeepc/mesa.git   发现本地就只有一个.git目录,那么这个时候就需要checkout了。   进入你的本地目录,如这个是mesa,利用 $ git branch –r

xqs83的专栏 12万+

Git初学者教程

1.什么是GitGit是一种流行的文件版本控制系统,在全球范围内被众多开发人员用于其项目。 与同类产品相比,它重量轻且性能Swift。 借助许多基于UI的工具来协助基于Git的版本控制,开发人员使用Git版本控制系统变得极为方便。 Git标榜了便宜的本地分支,方便的暂存区域和多种工作流配置等功能。 在本文中,我们将特别关注使用Git的入门,并介绍一些简单项目所需的一些基本命令。 本文...

danpu0978的博客 258

Git代码管理

Git代码管理 1、介绍 1.1 Git概述 Git是类似于SVN、CVS等代码管理软件,使用分布式技术实现。Github是互联网代码仓库,每个人都可以在上面创建自己的仓库,使用git完成同github仓库的代码同步等管理工作。 IntelliJ idea->Git: 使用 Git->GitHub: 同步资源 1.2 Git逻辑架构 git架构上分为远程仓库、本地仓库和工作空间。远程仓...

weixin_30311605的博客 160

初级JAVA程序员应该掌握的GIT知识(通俗易懂+实用)

前言 首先,这可能是帮助你最快上手git的资料了。 其次,本文非常的简单,不够深入,但足够适用小公司基于主分支(一般称为master分支)的工作场景,如果是大公司可能使用的是GitFlow工作流。 接着,如何学git呢,其实git的命令很多,我们在掌握了最常用的命令(本文提到的)之后,遇到问题百度就行了,不断遇到问题,加深记忆。 最后,本系列(初级JAVA程序员进阶)会一直做下去,欢迎到github上访问本系列。 初级JAVA程序员系列 项目地址,欢迎STAR 提交你的代码 此刻,你应该是在自己的分支上 在

qq_32648593的博客 2524

Java开发者必备:Git下载安装图文教程推荐

Java开发者必备:Git下载安装图文教程推荐 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在Java开发过程中,版本控制工具是不可或缺的。Git作为目前最流行的分布式版本控制系统,为开发者提供了强大的代码管理和协作功能。然而,对于初学者或新接触Git的开发者来说,如何快速、准确地完成Git的下载、安装和配置可能是一个挑战。为了解决这一问题,我们推出了《Java开发...

gitblog_06561的博客 1073

初级java工程师学习路线

掌握IDEA软件的安装、使用,能够使用IDEA创建并运行java代码B站马士兵教育:https://www.bilibili.com/video/BV1cX4y1w7q3java基础逻辑、语法、基本的类库https://www.bilibili.com/video/BV1FZ4y1H7rh推荐理由: java入门学习网站,我入门java的学习网站。java基础的一系列课程都有。推荐以观看马士兵教育的java基础视频为主,以查看这个网站学习为辅推荐理由: 我的java入门学习书籍,掌握基础语法,理解java

55555的博客 4373

java项目_初学者java项目的流程

初学者java项目的流程发布时间:2020-05-06 10:19:33来源:亿速云阅读:662作者:小新今天小编给大家分享的是初学者java项目的流程,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。初学者做简单的项目需要掌握以下知识点:一、前端语言:HTML+CSS+JavaScript开发工具:webstorm/vscode调试器:C...

weixin_28595749的博客 1538

java 项目教程_初学者怎么做java项目

初学者做简单的项目需要掌握以下知识点:一、前端语言:HTML+CSS+JavaScript开发工具:webstorm/vscode调试器:Chrome1、学会HTML的常用标签、元素、以及它们的属性。2、学会CSS的基本语法、各种样式的使用,理解CSS的盒子模型、文档流,会用定位、浮动和清除等常见的知识点。3、学会js的基础(变量、函数、数组、字符串等)、理解JavaScript的面向对象思想;会...

weixin_39818727的博客 624

Git安装配置超详细教程

Git安装配置超详细

Laptoy的博客 5万+

如何在 IDEA 中导入 Java 项目Git 仓库并启动

Java 开发中,集成开发环境(IDE)是开发者不可或缺的工具。IntelliJ IDEA 作为主流的 IDE,不仅提供了强大的开发功能,还支持与 Git 版本控制系统的深度集成。本文将详细介绍如何使用 IDEA 从 Git 仓库导入 Java 项目,配置 Maven 并运行 Tomcat,最终实现项目的启动与访问。

cooldream2009的博客 3261

git-build-hook 项目使用教程

git-build-hook 项目使用教程 1. 项目的目录结构及介绍 git-build-hook 项目的目录结构如下: git-build-hook/ ├── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── rudikershaw/ │ │ │ └── git...

gitblog_00023的博客 860

GIT初级入门至中级操作

GIT 初级入门至中级操作前言搭建环境安装UbuntuWindows初始化基本操作CloneInit工作流程add &amp; commitpush分支与合并分支操作新建分支切换分支合并分支删除分支 前言 下学期软件构造课要用到Java+Git联动,老师很早就让我们去学一下,寒假一直在弄别的,没管这些。其实我自己用Git+Github也差不多有些时间了。遇到不懂的就直接去Google/Baidu搜...

Raymond编程路 697

初学者学习Java 的软件有哪些?

初学者学习Java语言的常用的软件归结一下。 JDK: jdk:Java Development ToolKit 的简称,也就是 Java 开发工具包。 JDK 是整个 Java 的核心,是Java语言必备的工具,我们代码编写、编译、运行都是依靠jdk来帮助我们运作,jdk是编写Java代码的根基。 jdk中几个重要的文件夹和文件: 1)bin:包含了最主要的是编译器(javac.exe) 2)include:Java 和 JVM 交互用的头文件 3)lib:类库 4)jre:Java

LSFZ88888的博客 2729

Git超详细使用教程

Git超详细使用教程

weixin_45822310的博客 5506

GitHub上的Java初学者教程:level-0-module-5-nathan827

本文还有配套的精品资源,点击获取 简介:本课程或项目名称"level-0-module-5-nathan827"可能是一个针对Java编程初学者的模块化学习资源。它可能包含基础级别的Java编程知识,并可能由用户名为nathan827的用户创建或维护。内容主要涉及Java基础,面向对象编程以及可能包含的其他知识点,通过实践和问题解决来加强学习效果。教学材料可能包括Java源...

weixin_35751194的博客 1034

Git系列教材 (二)- 在Eclipse中使用 Git教程

Git系列教材 (二)- 在Eclipse中使用 Git教程 步骤1:目的步骤2:eclipse 版本步骤3:使用git方式导入项目步骤4:选择Clone URI步骤5:输入git参数步骤6:是否提供密码提示步骤7:选择分支步骤8:本地存放位置步骤9:导入此项目到Eclipse中步骤10:确定位置步骤11:运行HelloGit 步骤1:目的 本知识点讲解如何拉一个现成的java 项目到...

wanghuiwei888的博客 6560

app+BootLoader程序.rar

这个是atmelga 32M1的BootLoader和app应用源代码,供大家参考,使用在配药柜的显示屏上

上一篇: 气垫船的结构设计_我的气垫船充满了鳗鱼
下一篇: mega x_[MEGA DEAL] Ruby on Rails编码训练营(97%折扣)
danpu0978
博客等级 码龄10年 162粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值