パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

バージョン管理は」記事へのコメント

  • 勤務先ではCVSで一元管理をしています。
    けど、commitする前に、update掛けて自分が修正したファイルを他人が修正していないかチェックしない人が多くて、時々修正したところを元に戻されることがあるんですよねぇ。
    Linuxからcvsコマンド叩くときは、警告が出るから判るんだけど、WinCVS使ってるとそのまま上書きしてしまうらしくて...。
    全体のバージョン
    • by tabito (11971) on 2003年05月23日 14時15分 (#321597)
      自宅のディスクトップとノートPCとでWinCVS(ごった煮版)を使用していますが、コンフリクトを起こしてたらちゃんと警告してくれますが。

      ちなみにサーバはFreeBSDを使っています。
      親コメント
      • by zeissmania (3689) on 2003年05月23日 23時49分 (#322074)
        コンフリクトの警告って、
        1.変更した部分はぶつからないけど、同じファイルの他の部分が変更されている
        2.変更した分が、既に変更されている
        場合の2種類ありますよね?
        1.の場合でもWinCVSで警告でます?
        私はWinCVSはほとんど使わないので、よく判ってないのですが、例えば、
        Aが元ソースの10行目に2行追加、commit
        BがAのcommit前の状態の20行目を変更、commit
        した場合、Linuxでcvsコマンド直接叩いてのcommitだと、Bは修正したファイルが変更されている旨の警告を受けて、commitはできないです。
        が、WinCVSだとそのままcommitしてしまって、Aの追懐した2行が削除されてしまうみたいなんですが....。
        親コメント
        • by naruaki (2658) on 2003年05月24日 10時22分 (#322323) 日記
          ザックリ検証してみましたが、こちら(WinCVS 1.2)では再現せずです。
          元の Rev. が 1.1 だとして、A氏が commit した段階で、リポジトリ上では Rev.1.2 に up する訳で、B氏のローカルな CVS/Entries では Rev.1.1 のままなのだから、この状況でB氏が commit 操作をしようとしても、update を先にしろ!と言われるものと思いますが。

          常は、「F4」Query update を心がけるようにしています。

          親コメント
          • by zeissmania (3689) on 2003年05月25日 0時47分 (#322587)
            わざわざ、検証して戴き、ありがとうございます。
            そのはずですよねぇ....一体何をどうやったら、バックポートできるのやら....。
            親コメント
            • Re:CVSですが (スコア:2, 興味深い)

              by takenoko (9775) on 2003年05月26日 15時15分 (#323275)
              自分の経験。

              (1) checkoutする
              (2) checkoutしたファイルを自分のワーキングディレクトリにコピーする
              (3) コピーしたファイルを変更
              (4) cvs update(commitするまえに必ずしろ、と言っておいた)
              (5) 変更したファイルをcheckoutしたディレクトリにコピー
              (6) cvs commit

              自分の修正が全て巻き戻っていましたです。
              本人はCVSの動作を理解していなかった模様。

              この事件で、簡単だからー…ってcheckoutとupdateとcommitだけ教えて
              CVS使わせると危険だと気づきました。
              親コメント
            • Windows 環境で WinCVS を使っていると、

              1. checkout/update する。
              2. ファイルをエディタで開いてぷちぷち修正…。
              3. 上記エディタで「保存」する前に再度 update を実行。
              4. エディタで「保存」。
              5. commit。

              なんて手順で簡単に 1. と 3. の間に加えられた修正が消えてしまいます。
              Win ユーザにはありがちな行動パターンだけに…。

              // 「保存」前に update するの禁止!、ということでなんとか頑張ってます。
              --
              Only Jav^Hpanese available :-)
              親コメント
            • by Anonymous Coward
              私の同僚は、commitしようとしてcvsに怒られたので、現在の作業コピーを一度、他の所に待避させた後、updateをかけてからさっきのファイルで、新しいものを上書き、その上で、commitを行うという強者級のことをやってのけました。 結果はご想像の通りです・・。
              • by zeissmania (3689) on 2003年05月25日 11時17分 (#322690)
                そういや、彼等、コンパイル&テストはLinuxでやってるけど、CVSへの登録はWinCVSでやってる....(-_-;;;;
                親コメント
              • by Anonymous Coward
                そういう事を行う輩がいたとしても、CVS 使っていれば 何時でも任意の状態に戻せる!という安心感があると思いませんか。
                このケースの場合も、誰かがマージ作業を行えば、なんとかなると思います。ソース共有の無経験者って、マージに疎いのかもしれません。

                リポジトリ壊れたら泣くしかないけど。

              • by Anonymous Coward
                なぜに、emacs+pcl-cvsを使わないのだとかいってみる。
                そういえば、eclipseにもCVSの機能があったような。
                (試してない)どうなんかな?
              • by karla (10107) on 2003年05月29日 8時00分 (#324800)

                eclipseでCVSしてます。

                いいですよ、なかなか。
                CVSコマンド知らなくても、CVSすら知らなくても、CVSはCSVのことだと思っている上司だろうとw、GUI上から選択したファイルを一括であぷぷすりゃOK。
                CVSリポジトリの作成から、何から全部GUIでできます。
                #SSH2はプラグインが必要。

                eclipseはそれだけでもローカルヒストリーから復元等の機能がついてます。
                ついでに、diffしたりとか競合個所発見したりとか、そこからマージしたりとかも、GUIツールならではの楽々操作振り!
                これなら、あの屁たれ上司も納得するでしょうよw。

                ただ、eclipse自体がMyマシンでは重過ぎるTT
                とっても新しいノートが欲しいです。

                親コメント
              • by Anonymous Coward
                Eclipse+CVS+TomcatPluginでJavaServlet作成しているんですが、
                Eclipse作業Dir/WEB-INF/classesに、ログ出力用設定ファイル
                 common-loggings.properties
                 log4j.prpperties
                を置いてコミットし、他マシンのEclipseでcheckout、
                その後なんどかEclipseでTomcatデバッグモードで起動してたりすると、
                上記2ファイルが消されたりするの
              • by tapon (8548) on 2003年06月01日 12時20分 (#327192) 日記
                うちも最近 eclipse 使い始めました。

                ファイルが消されるのは、たぶんそこ(WEB-INF/classes/)が *.class 出力ディレクトリだからでしょう。
                僕も起動用の shell script 消されました。(T_T)
                eclipse は何らかのタイミングで出力用ディレクトリをお掃除してくれるようです。

                あと、.classpath, .project, .tomcatplugin はうまく使うと逆に便利ですよ。
                環境依存のクラスパスなどは変数を拡張する形でプロジェクトに設定し、
                その変数は各環境のeclipse本体の設定としておくのです。
                するとリポジトリは全く同じでも各環境で違うclass pathを参照できるはずです。
                親コメント
      • by Anonymous Coward
        disktop
        • by Anonymous Coward
          >disktop

          ラップトップPC = 膝上のPC
          デスクトップPC = 机上のPC
          ディスクトップPC = ディスク上のPC

          つまり、VMwareとかですね:-)

アレゲはアレゲを呼ぶ -- ある傍観者

処理中...