検索

ホームページ  >  に質問  >  本文

在phpstorm里如何删掉本地的某一文件重新获取最新的github里面的最新版本

我现在有个文件是a.js 但是本电脑上的a.js不是最新版,我想把他更新为最新版(不和我的这个版本合并,想得到纯粹的最新版)

PHPzPHPz2798日前814

全員に返信(4)返信します

  • 伊谢尔伦

    伊谢尔伦2017-04-24 09:14:58

    信頼できる答えを教えてください。この答えを採用することに問題はありませんが、特定のファイル操作を対象とするものでも、IDE を使用するものでもありません。

    私は PHP Storm を持っていないので、その兄弟である IntelliJ IDEA を例として使用します。

    実際、ローカル ファイルを削除して最新バージョンを取得する必要はありません。「履歴から指定されたファイルの任意のバージョンを更新する」だけです。これには、もちろん最新バージョンが含まれます。次に、最新の履歴レコード (git fetch) を取得していることが前提となります。対応する IDE 操作は次のとおりです。 git fetch,对应的 IDE 操作是:

    接着我们来看如何对指定文件进行版本更新。

    第一步,查看目标文件历史记录

    第二步,找到你要的版本(无论是新版本还是旧版本都一样)

    另外,在此时你可以对文件内容进行比对,有助于精确定位你要的版本,如下图(右键菜单里有 Compare...)

    最后,使用 Get 菜单项获取指定版本,其对应的命令是 git checkout


    如上所述,IDE 里的集成操作还是很方便的,胜过命令行的方面就是图形化指示相当清晰。但是——命令行更快,更灵活,只要你脑子够清楚,还是命令行的效率更高一筹。

    其实若流程顺畅,一半是较少针对特定文件去获取特定版本的。多数情况下我们都是 git pull -> 干活 -> commit -> 干活 -> commit ... -> git pull (maybe 解决冲突) -> git push,每一次你 git pull 的时候,都等于拿到了所有文件的最新版本(等价于 git fetch + git merge/rebase

    🎜次に、指定したファイルのバージョンを更新する方法を見てみましょう。 🎜 🎜最初のステップは、 ターゲット ファイルの履歴を表示する🎜 🎜🎜 🎜2 番目のステップは、必要なバージョン (新しいバージョンか古いバージョンか) を見つけることです🎜 🎜🎜 <ブロック引用> 🎜さらに、以下に示すように、この時点でファイルの内容を比較して、必要なバージョンを特定することができます (右クリック メニューの比較...)🎜 🎜🎜 🎜最後に、[取得] メニュー項目を使用して指定したバージョンを取得します。対応するコマンドは git checkout です🎜 🎜🎜 <時間> 🎜 上で述べたように、IDE での統合操作は依然として非常に便利です。コマンド ラインよりも優れているのは、グラフィカルな指示が非常に明確であることです。ただし、コマンド ラインの方が高速かつ柔軟です。十分に理解している限り、コマンド ラインの方が効率的です。 🎜 🎜実際、プロセスがスムーズであれば、半数が特定のファイルの特定のバージョンを取得する可能性は低くなります。ほとんどの場合、 git pull -> commit -> work-> を実行します (競合を解決する可能性があります)。 -> git Pushgit pull を実行するたびに、すべてのファイルの最新バージョンが取得されます (git fetch + と同等) git merge/rebase)、すべてのバージョンを更新したくない場合を除き、上記の操作は多くの場合、最新バージョンを取得するのではなく、バージョンをロールバックすることになります。その場合、私の答えは必要です。 🎜

    返事
    0
  • 阿神

    阿神2017-04-24 09:14:58

    「送信」というときは、コミットまたはプッシュのことを意味しますか?
    特定のファイルを削除したいだけの場合は、直接削除してください
    ロールバックコミットの場合は、更新する前のバージョンに戻してから、再度プルします

    返事
    0
  • 怪我咯

    怪我咯2017-04-24 09:14:58

    これは PhpStorm とは何の関係もありません。単なる基本的な git 操作です。
    ファイルをローカルで削除し、リモートのファイルをプルダウンします。

    a.jsを削除する
    rm -rf a.jsrm -rf a.js
    更新本地
    git add .
    git commit -m "deleted a.js"
    合并远程
    git fetch
    git checkout origin/master a.js ローカルを更新します

    git add .

    git commit -m "deleted a.js"
    リモートをマージします

    git fetch🎜git checkoutorigin/master a.js🎜 🎜origin はリモート名です🎜 マスターはリモートブランチです🎜

    返事
    0
  • ringa_lee

    ringa_lee2017-04-24 09:14:58

    実際、ウッディほど複雑である必要はありませんよね? ?
    ただgit checkout a.jsそれだけです

    返事
    0
  • キャンセル返事