質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Git LFS

Git LFSは、巨大なバイナリファイルをGitでバージョン管理する機能です。Gitはソースコードを管理するツールのため重くなりがちですが、Git LFSはその問題を解決する機能をGitの拡張として提供します。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

バージョン管理

バージョン管理はコンピューター上にファイルとして格納されているドキュメント・プログラム・その他の情報の変更履歴等を管理するものです

git-flow

git-flowとは、gitのブランチモデルを使う時の補助ツールです。gitを使う際のブランチ作成などで、一定のルールをまとめたものを指します。

Q&A

解決済

2回答

1023閲覧

Gitでブランチを複数作らず2つのファイルをpushしてしまったときの対処方法

cafe1111

総合スコア62

Git LFS

Git LFSは、巨大なバイナリファイルをGitでバージョン管理する機能です。Gitはソースコードを管理するツールのため重くなりがちですが、Git LFSはその問題を解決する機能をGitの拡張として提供します。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

バージョン管理

バージョン管理はコンピューター上にファイルとして格納されているドキュメント・プログラム・その他の情報の変更履歴等を管理するものです

git-flow

git-flowとは、gitのブランチモデルを使う時の補助ツールです。gitを使う際のブランチ作成などで、一定のルールをまとめたものを指します。

0グッド

0クリップ

投稿2021/04/10 04:48

■問題点
案件でよくある質問ページとプライバシーポリシーページを作っているのですが、faqというブランチにgit add . ですべてのファイルをgitの管理下にいおいてしまい、プライバシーポリシーページのコードもfaqにpushしてしまいました。
本来であれば、faqとpolicyというブランチを作って各要素のファイルをpushするのだと思いますが、何か解決策がありましたら教えていただきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ku__ra__ge

2021/04/10 05:39

あなたの求めている「解決」とは何でしょうか? 「pushを取り消す方法を教えてください」や「本来policyブランチにコミットすべき変更をfaqブランチにコミットしてしまった。変更をpolicyブランチにコミットしなおす方法を教えてください」には回答できますが、「何か解決策がありましたら教えていただきたい」という質問には回答できません。
cafe1111

2021/04/10 06:15

すみません、自分の質問力不足でした。 本来policyブランチにコミットすべき変更をfaqブランチにコミットしてしまった。変更をpolicyブランチにコミットしなおす方法を教えてください」 こちらの認識で問題ありません。
guest

回答2

0

ベストアンサー

faqブランチの最後のコミットが本来policyブランチにコミットすべき変更だという前提で回答します。
以下のような手順でfaqブランチの最後のコミットをpolicyブランチにも追加することができます。

git

1git checkout policy # 現在ブランチをpolicyに変更 2git cherry-pick faq # faqブランチ最後のコミットをpolicyブランチに追加する 3# ( 必要なら git push も行う )

そしてfaqブランチの変更を取り消すのですが、既にpushしてしまったのであれば、他の人に変更を取り消したことが分かるように「変更を取り消す変更」をpushする必要があります。
以下のような手順になります。

git

1git checkout faq # 現在ブランチをfaqに変更 2git revert head # 最後の変更について「変更を取り消す変更」を追加 3git push # 「変更を取り消す変更」をpushする

投稿2021/04/10 06:49

ku__ra__ge

総合スコア4524

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cafe1111

2021/04/10 08:22

ご回答ありがとうございます。 ご回答していただいた内容や他の方の記事を参考にいじって見たのですが、以下のエラーがでてきてしまいました、 このエラーを解決する方法はわかりますでしょうか? ■コマンドの流れ git revert HEAD~2 error: your local changes would be overwritten by revert. git stash git revert HEAD~2 Removing:ファイル名 Auto-merging ファイル名 CONFLICT (content): Merge conflict in ファイル名 CONFLICT (modify/delete):ファイル名 n HEAD. Version HEAD of ファイル名 以下ほぼ同じようなものが続く error: could not revert a00e050... コミット名 hint: after resolving the conflicts, mark the corrected paths hint: with 'git add <paths>' or 'git rm <paths>' hint: and commit the result with 'git commit' git push fatal: The current branch create_purchase has no upstream branch. To push the current branch and set the remote as upstream, use git commit -m"aaa" U ファイル名 error: Committing is not possible because you have unmerged files. hint: Fix them up in the work tree, and then use 'git add/rm <file>' hint: as appropriate to mark resolution and make a commit. fatal: Exiting because of an unresolved conflict.
ku__ra__ge

2021/04/10 08:52

revertで作成しようとしてる変更の取り消しが他の修正と衝突しているようです。(HEAD~2の修正と同じ箇所を別のコミットでも修正しているなどの理由で、どちらが正しいのかgitには判断できない) mergeの衝突と同じ方法で衝突を解消する操作を行ってください。衝突を解消しないとcommitやpushは行なえません。 あとpush先が未設定なのでpushできないとメッセージが出ているので、git push origin ブランチ名 のようにpush先の指定が必要です。
cafe1111

2021/04/11 03:36

ご回答ありがとうございます! なんとか無事解決できました!
guest

0

「Git 取り消し」でぐぐると解説が出てきますね

投稿2021/04/10 04:59

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cafe1111

2021/04/10 06:21

ありがとうございます! 調べてみます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問