0

このブランチをマスターにマージするにはどうすればよいですか?

thufir@dur:~/NetBeansProjects$ 
thufir@dur:~/NetBeansProjects$ git clone -b 4.GUI_loading_messages_slowly git@github.com:THUFIR/USENET.git
Cloning into USENET...
remote: Counting objects: 3782, done.
remote: Compressing objects: 100% (1274/1274), done.
remote: Total 3782 (delta 1647), reused 3613 (delta 1478)
Receiving objects: 100% (3782/3782), 388.55 KiB | 100 KiB/s, done.
Resolving deltas: 100% (1647/1647), done.
thufir@dur:~/NetBeansProjects$ 
thufir@dur:~/NetBeansProjects$ cd USENET
thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ git branch -a
* 4.GUI_loading_messages_slowly
  remotes/origin/1.FetchBean_CLI
  remotes/origin/2.some_GUI
  remotes/origin/3.messageId__string
  remotes/origin/4.GUI_loading_messages_slowly
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ git checkout -b master remotes/origin/master
Branch master set up to track remote branch master from origin.
Switched to a new branch 'master'
thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ git branch
  4.GUI_loading_messages_slowly
* master
thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ git diff master 4.GUI_loading_messages_slowly 
diff --git a/src/META-INF/persistence.xml b/src/META-INF/persistence.xml
index 252f563..3cebe3d 100644
--- a/src/META-INF/persistence.xml
+++ b/src/META-INF/persistence.xml
@@ -2,8 +2,8 @@
 <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http:/
   <persistence-unit name="USENETPU" transaction-type="RESOURCE_LOCAL">
     <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
-    <class>net.bounceme.dur.usenet.database.Article</class>
-    <class>net.bounceme.dur.usenet.database.Headers</class>
+    <class>net.bounceme.dur.usenet.model.Article</class>
+    <class>net.bounceme.dur.usenet.model.Newsgroup</class>
     <properties>
       <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/usenet
       <property name="javax.persistence.jdbc.password" value="password"/>
diff --git a/src/net/bounceme/dur/usenet/controller/ArticleNewsgroup.java b/src/net/bounceme
index b65737a..a9fadd2 100644
--- a/src/net/bounceme/dur/usenet/controller/ArticleNewsgroup.java
+++ b/src/net/bounceme/dur/usenet/controller/ArticleNewsgroup.java
@@ -5,8 +5,8 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 import javax.mail.Message;
 import javax.mail.MessagingException;
-import net.bounceme.dur.usenet.database.Article;
-import net.bounceme.dur.usenet.database.Headers;
+import net.bounceme.dur.usenet.model.Article;
+import net.bounceme.dur.usenet.model.Newsgroup;
 import net.bounceme.dur.usenet.model.Usenet;

thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ git merge 4.GUI_loading_messages_slowly 
Auto-merging src/net/bounceme/dur/usenet/controller/Page.java
CONFLICT (content): Merge conflict in src/net/bounceme/dur/usenet/controller/Page.java
Auto-merging src/net/bounceme/dur/usenet/database/DatabaseUtils.java
CONFLICT (content): Merge conflict in src/net/bounceme/dur/usenet/database/DatabaseUtils.java
Auto-merging src/net/bounceme/dur/usenet/model/Usenet.java
CONFLICT (content): Merge conflict in src/net/bounceme/dur/usenet/model/Usenet.java
Automatic merge failed; fix conflicts and then commit the result.
thufir@dur:~/NetBeansProjects/USENET$ 
thufir@dur:~/NetBeansProjects/USENET$ 

競合を「修正」したいのではなく、単にマスターをブランチに置き換えます。おそらくリベース

4

4 に答える 4

2
git checkout master
git merge GUI_loading_messages_slowly
git commit
git push
于 2012-08-07T07:44:57.257 に答える
1

変更するブランチに常に切り替えます。したがって、最初にマスターをチェックアウトするのはあなたのケースにとって正しいことです。マージがうまくいかなかった場合は、gitresetを使用してマージを「元に戻す」ことができます。

于 2012-08-07T07:44:52.430 に答える
1

マージして入力するブランチに変更します。

git merge branchname

ただし、最初は基本とドキュメントを実際に読む必要があります。

チュートリアル

于 2012-08-07T07:45:40.283 に答える
0

マージはアドバタイズされたとおりに機能しましたが、マスターブランチを削除した後のみです。

thufir@dur:~/NetBeansProjects$ 
thufir@dur:~/NetBeansProjects$ git clone git@github.com:THUFIR/usenet.git
Cloning into usenet...
remote: Counting objects: 3750, done.
remote: Compressing objects: 100% (1263/1263), done.
remote: Total 3750 (delta 1630), reused 3585 (delta 1465)
Receiving objects: 100% (3750/3750), 385.93 KiB | 85 KiB/s, done.
Resolving deltas: 100% (1630/1630), done.
thufir@dur:~/NetBeansProjects$ 
thufir@dur:~/NetBeansProjects$ cd usenet/
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git branch -a
* 4.GUI_loading_messages_slowly
  remotes/origin/1.FetchBean_CLI
  remotes/origin/2.some_GUI
  remotes/origin/3.messageId__string
  remotes/origin/4.GUI_loading_messages_slowly
  remotes/origin/HEAD -> origin/4.GUI_loading_messages_slowly
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git branch master
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git branch
* 4.GUI_loading_messages_slowly
  master
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git checkout master
Switched to branch 'master'
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git branch
  4.GUI_loading_messages_slowly
* master
thufir@dur:~/NetBeansProjects/usenet$ git branch -a
  4.GUI_loading_messages_slowly
* master
  remotes/origin/1.FetchBean_CLI
  remotes/origin/2.some_GUI
  remotes/origin/3.messageId__string
  remotes/origin/4.GUI_loading_messages_slowly
  remotes/origin/HEAD -> origin/4.GUI_loading_messages_slowly
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git merge 4.GUI_loading_messages_slowly 
Already up-to-date.
thufir@dur:~/NetBeansProjects/usenet$ 
thufir@dur:~/NetBeansProjects/usenet$ git push origin master
Total 0 (delta 0), reused 0 (delta 0)
To git@github.com:THUFIR/usenet.git
 * [new branch]      master -> master
thufir@dur:~/NetBeansProjects/usenet$ 

マージが機能したのは、最初にマスターブランチを削除したためです。これは少し極端に思えますが、実際にあります。そうでなければ、細かいマニュアルが示唆しているように、ファイルが一致するように編集せずに、競合を修正する方法がわかりませんでした。別のブランチに一致するように最初に手動で編集する必要がある場合、マージのポイントがわかりません。エラーメッセージではなく、それに関するプロンプトが表示されるはずです。

push origin :master最初にデフォルトのブランチを変更せずにgithubでマスターブランチを削除できないという条件付きで、簡単です。マージが常に自動的にマージされるとは限らず、競合があることをときどき元に戻すことは、やや悪化します。マージがアドバイザリを返さない理由がわかりません。その後、「よろしいですか?」と尋ねます。とにかくマージします。いずれにせよ、私はgitについて(少し)、特にブランチを削除する方法を学びました。

意味がわかりません。つまり、Already up-to-date.githubの起源は確かに最新ではないので、何が最新なのか疑問に思います。おそらくローカルコピーは現在最新ですが、なぜ「すでに」最新なのですか?

于 2012-08-09T08:49:05.257 に答える