В данной статье мы рассмотрим процесс внесения изменений в локальный Git репозиторий.
Предположим, что нам необходимо удалить один файлы и добавить другие.
Так выглядит изначальная структура нашего проекта:
Удалим файл HelloWorld.java и добавим следующие два класса:
Developer.java
package net.proselyte.gittutorial;
/**
* Simple JavaBean domain object that represents a Developer.
*
* @author Eugene Suleimanov
* @version 1.0
*/
public class Developer {
private String firstName;
private String lastName;
private String specialty;
private Integer salary;
public Developer() {
}
public Developer(String firstName, String lastName, String specialty, Integer salary) {
this.firstName = firstName;
this.lastName = lastName;
this.specialty = specialty;
this.salary = salary;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getSpecialty() {
return specialty;
}
public void setSpecialty(String specialty) {
this.specialty = specialty;
}
public Integer getSalary() {
return salary;
}
public void setSalary(Integer salary) {
this.salary = salary;
}
@Override
public String toString() {
return "First Name: " + firstName +
"\nLast Name: " + lastName +
"\nSpecialty: " + specialty +
"\nSalary: " + salary;
}
}
Project.java
package net.proselyte.gittutorial;
/**
* Main class of application
*
* @author Eugene Suleimanov
* @version 1.0
*/
public class Project {
public static void main(String[] args) {
Developer developer = new Developer("Eugene", "Suleimanov", "Java", 3_000);
System.out.println("Developer Information:\n");
System.out.println(developer.toString());
}
}
Теперь проверим статус Git с помощью команды
git status
On branch master
Changes not staged for commit:
(use "git add/rm ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: .idea/workspace.xml
deleted: out/production/GitTutorial/net/proselyte/gittutorial/HelloWorld.class
deleted: src/net/proselyte/gittutorial/HelloWorld.java
Untracked files:
(use "git add ..." to include in what will be committed)
out/production/GitTutorial/net/proselyte/gittutorial/Developer.class
out/production/GitTutorial/net/proselyte/gittutorial/Project.class
src/net/proselyte/gittutorial/Developer.java
src/net/proselyte/gittutorial/Project.java
no changes added to commit (use "git add" and/or "git commit -a")
Для того, чтобы добавить наши изменения в локальный репозиторий git, нам необходимо выполнить следующие две команды в терминале:
1. Добавить файлы в Git
git add --all
2. Подтвердить изменения
git commit -m "Adding classes Developer.java and Project.java"
[master 97d5de4] Adding classes Developer.java and Project.java
7 files changed, 156 insertions(+), 42 deletions(-)
create mode 100644 out/production/GitTutorial/net/proselyte/gittutorial/Developer.class
delete mode 100644 out/production/GitTutorial/net/proselyte/gittutorial/HelloWorld.class
create mode 100644 out/production/GitTutorial/net/proselyte/gittutorial/Project.class
create mode 100644 src/net/proselyte/gittutorial/Developer.java
delete mode 100644 src/net/proselyte/gittutorial/HelloWorld.java
create mode 100644 src/net/proselyte/gittutorial/Project.java
И добавим файл .gitignore, который позволят нам игнорировать некоторые файлы и папки (классы, конфигурационные файлы IDE, jar-файлы и т.д.):
# Folders
.idea/*
out/*
# Files
*.class
В данном случае мы игнорируем содержимое папок .idea/ и out/, а также все файлы с расширение *.class.
Повторим процедуру добавления файлов в локальный репозиторий и подтверждения изменений:
git add --all
git commit -m "Adding .gitignore file"
[master 5e0298b] Adding .gitignore file
2 files changed, 28 insertions(+), 4 deletions(-)
create mode 100644 .gitignore
Проверим статус git ещё раз:
git status
On branch master
nothing to commit, working directory clean
Все файлы добавлены и изменения подтверждены.
На этом мы заканчиваем изучение процесса внесения изменений в проект.
В следующей статье мы рассмотрим как просмотреть историю изменений проекта.