自分をシニアと見なしているチームメイトにSVNの概念の基本を学ぶよう説得するにはどうすればよいですか?[閉まっている]


40

いくつかの背景から始めるために、私はこの夏、新しい開発者の地位に就き、チームの最新メンバーになりましたが、ほとんどの経験がありました。

これまでのところ、導入コストが低いため(時間と労力の観点から)、健全性イニシアチブを簡単に十分に進めることができました。しかし、物事は少しレベルアップしました。

私のチームメイトの1人は、経験はあるものの、SVNを本当に理解していません。当然、SVNの海を描いたメンタルマップ上の空白の領域は、彼にかなり奇妙な使用パターンを採用させます。

たとえば、「開発者ごとに1日1 SVNコミット」というポリシーを宣言しました。そうしないと、「サーバーのディスクスペースがすぐになくなる」ためです。SVNコミットは完全なコピーではなくデルタであると彼に説明したとき、彼は疑いを持って返答しましたが、今日でもその意味を理解しているかどうかは完全にはわかりません。

また.project、SVN にEclipse 構成を含めるかどうかについての議論が白熱していました。私のチームメイトは、多くの無意味な衝突を引き起こしましたが、そうすべきだと主張しました。私は個々の開発者構成ファイルをSVNに保存することに反対でした。最後に、チームメイトは、コミットのたびにソースツリー全体を再チェックアウトして、「リポジトリにコミットされたコードが機能すること」を確認する練習をしていることがわかりました。それが、彼がSVNでプロジェクト構成を維持することに熱心だった理由でした。そのため、プロジェクトを再インポートするのは簡単です。コミットが作業コピーをリモートのバイト単位で同期し、再チェックアウトが不要になると説明したとき、私のチームメイトは再び疑念を持って応答し、最終的に問題全体を取るに足らないものとして振り切った。

私の意見では、チームは、SCMとまったく共有する必要のない開発者固有の設定のみを含むプロジェクト構成ファイルのSVNの競合を解決することで時間を無駄にします。誰かが誤った仮定に基づいてプロセスを調整したため、これはすべて混乱しています。

SVNの基本をよりよく理解するために、自分をシニアだと思っているチームメイトを説得するにはどうすればよいですか?


5
運転技術の変更を読みましたか?関連するかもしれない実用的なプログラマの本です。これは、変化に反対する人々のパターンと、これらの特定の人々のグループを克服するためのテクニックを示しています。私はまだそれを読んでおり、私は今それを隣に持っていないので、それを引用することはできませんが、それはあなたの問題に関連しているように聞こえます。
トーマスオーエンズ

@MarkTrapp-上記のコメントのほとんどは、問題のトピックに実際には関係ありません。それは、対立がどのように発生するかを説明するサイドノートへの応答として始まり、一種の言語戦争として終わりました。私はそれが少し過剰であることに同意しますが、それでも私たちはまだ議論をまだ終わらせていません。
勇気ある匿名

@CourageousAnonymousCowardさて、これらのコメントを整理しますチャットで議論を続けることができます。先ほど言ったように、質問に対するコメントは、質問自体の明確化とフィードバックのためのものであり、質問の改善に関係しないトピック外または接線上の会話のためのものではありません。ありがとう、そしてプログラマーへようこそ!

4
彼にgitを紹介します。「次世代のSCMをご覧ください」。gitの概念を学んだ後、SVNを理解するのに問題はありません。彼は(おそらく)gitをまだ使用していないので、これは攻撃性が低いように聞こえるかもしれません。
kizzx2

1
@CourageousAnonymousCoward、同じことをコントロールする人々が意見を異にするとき、それは常に失望します。これはまさに、リーダー(より多くのコントロールを発揮する力を持っている)が介入しなければならない状況です。問題は、関係者が助けを求めるのは難しいことです。チームのために、誰かが尋ねるべきです。
GuyR

回答:


30

IMOは、プロジェクトに直接的な問題/害を引き起こす問題を、その単一の開発者のみに影響する問題から分離することが最善です。たとえば、1日に何度もすべてをチェックアウトすることを好む場合、速度は低下しますが、他の人には影響しません。だから、彼にそれをさせて(彼の仕事に顕著なパフォーマンスの遅れがあるまで)、それについて議論する手間からあなたを救うことができます。

.projectリポジトリにEclipse ファイルを保持する、または1日に1回コミットするなど、言及する他の問題は、チームができるだけスムーズに進行できるようにするために焦点を当てる必要がある場所です。まず、他のチームメンバーに問題を引き起こすかどうかを他のチームメンバー尋ねる/収集する必要があります。他の人がいる場合、一緒に多くの圧力をかけることができ、必要に応じて、管理に向けて問題を簡単にエスカレーションできます。

「SVNのディスク領域が不足している」ことについては、実験を行うことで(おそらく別のテストリポジトリで)自分の考え反論するのは簡単です。1つの巨大なテキストファイル、または多くのファイルに変更をコミットする前後に、物理リポジトリファイル階層のサイズを監視する必要があります。それが彼を納得させないなら、何もできません。

その場合、残念ながらあなたはおそらく他の男が彼の尊厳の喪失として「ランクの低い」誰かからのアドバイスを受け入れると見る権威の問題を抱えています。このような競合は、論理的な議論によって解決することはできません。経営陣にエスカレーションする必要がありますが、その前に(チームメイトや経営陣から)十分なサポートを得るように注意してください。このような動きは、他の人によってオープン攻撃として認識される可能性があり、したがって、問題のある結果をもたらす可能性があります(どちらか、および/またはチーム全体の平和)。そのため、3回考えて、その動きをする前に協力的な同僚と話し合ってください。


2
私の印象では、チームメイトはこれまでと同じように続けたいだけで、合理的な議論や事実にはあまり興味がありません。しかし、SVNを適切に使用することに対する彼の関心を何らかの形で刺激するような、前向きな動機付けを使用したいと思います。それについて何かアドバイスはありますか?
勇気匿名の臆病者

5
@匿名で、他の誰かが新しいことを学ぶことに興味を抱くことは、通常不可能に近いです。IMOに向けて最善を尽くすことができるのは、チームの他のメンバーに新しい方法を採用させ、この男によって引き起こされた障害を除去/中和し、仲間のプレッシャーを働かせることです...他の人と一緒に(他の人が彼の昔のやり方について冗談を
言い

4
@maple_shaft-えーと。あなたは私をあなたの過去の誰かと間違えていると思います。ここでの問題は、彼と私とチーム全体が、共有する必要のない開発者固有の設定のみを含むプロジェクト構成ファイル内のSVNの競合を解決することによって時間を無駄にすることです。
勇気ある匿名Co

3
@AnonymousCoward svn ignoreは常にオプションです。
クリスチャンP

3
@maple_shaft-同じ理由で、あなたの古いチームの1人のメンバーがEmacsの使用を許可されました。創造の自由は良いことです。
勇気ある匿名Co

9

会社でウィキを使用している場合は、SVNに関する高品質の投稿をいくつか書いてください。

  • なぜそれを使用する必要がありますか?
  • いつ使用すべきですか?
  • どのような問題を解決しますか?

CTOの目に留まり、使用を拒否する人は誰でも使用する必要があります:)


5

リーダー、マネージャー、チームメンバーとして、私は多くのレベルで専門家と人格の対立を解決する必要がありました。どんな役割に就いても、私はその役を望まないときでもリーダーとして受け入れられるのが普通です。この理由は、私がこれらの対立に対処する方法です。

ここにいる多くの人々とは異なり、私はこの状況に対処することが「あきらめる」、「彼に新しい道具を見せる」、「彼がお尻や衰弱に落ちるのを待つ」ことに同意しません。最も重要なことは、役割がより明確に定義されるまで待つことは決して良い考えではありません。それらの役割は、待つことのない人々、信念、倫理、そして人々が関与しているかどうかにかかわらず重大な状況に対処する能力によって定義されます。

これらの状況であなたが説明している人のタイプを扱うためのいくつかの方法があります。最初の最初のステップは彼が彼のように振る舞っている理由を調査することです。彼が知っていることと知らないこととはほとんど関係ありません。彼は以前にこの情報を簡単に見つけたはずだったので、質問は実際には2つのことのうちの1つです。または「提供されている情報を拒否するのはなぜですか?」これは、正確に対処する必要があるものを見つけるのに役立ちます。

私の経験では、プログラマー(私自身を含む)は、いくつかの理由でグッドプラクティスや新しいツールを拒否しています。

  • ソースは信頼できません。「マックのカルト」と「MS崇拝者」の間で日々ますます分極化する業界では、「オープンソースのイデオロギー」と「プロプライエタリの実用性」など...-提供された情報と、その情報がたとえその情報であっても信頼できるものとして検証されました。
  • 長期にわたる悪い経験...同様の、または同じ技術またはプラクティスを使用した場合。開始時には完璧なものはなく、多くの場合、最終的に機能の1/4未満で開始します。実装が不十分な段階で、劣悪な製品または同じ製品で何時間も何日も、または何週間も働いていた可能性が完全にあります。
  • 「信頼できる」ソース...は、提示されている情報と矛盾しています。「信頼できる」とは、彼が信頼する人またはエンティティを意味します。多くの人々は、私たちが信頼する人々を現実を表さないレベルに引き上げる傾向があります。この情報源は、この信念を人に押し付けた必要さえありません。ほとんどの場合、私たちは自分でそれを行います。少なくとも一つの側面では、それは私たちに何かをしたい、または似たような人を与えます。
  • セキュリティの欠如これは前のポスターで強調されました。私たちのプログラムは、作業を始めてから資産になります。私たちが働いている会社だけでなく、一緒に働いている人々にも。これは単に制御の問題ではありません。私たちの中には、気になる人たちにきちんとしたものを見せたいと思う人もいます。私たちの中には、外部の人や製品によって害を受けないようにしたい人もいます。一部の人にとっては、それは私たちの考え方や感覚の延長でもあります。それは私たちの哲学とイデオロギーのいくつかを収容し、私たちの知的コアを公開しています。多くの人にとって、それがクラス、雇用主、またはクライアント向けであろうと、それは私たちの未来です。一部の人にとっては、それらのすべてです。この意味での「セキュリティ」は、データ、必ずしも、またはコードには適用されません。

どちらが要因であるかを見つけることは非常に簡単です。人をニュートラルな設定にします。一般的にあなたが観察していることを人に説明してください。この行動の原因は何なのか、正直に人に尋ねてください。今、それは常にうまくいくとは限りませんが、ほとんどの大人は、あなたが非合理的に行動しているように見える誰かを助けたいと思うとき、かなりよく反応します。彼は不合理に行動していないかもしれませんが、実際に何が起こっているのか誰も理解できないことを知らないでしょう。

問題が実際に何であるかを見つけたら、適切なツールを使用して対処することができます。シナリオ#1の場合、信頼できるソースから調査を行うことを奨励します(これは重要です)彼自身の調査結果であなたに戻ってください。これは、彼自身の情報があなたにとって価値があることを彼に伝えます。シナリオ2の場合、現在と以前との違いを正確に比較します。彼に試してみることを奨励しますが、うまくいかない場合のバックアップ計画を立ててください。シナリオ#3の場合、ソースに自分の情報を再クエリするように伝えます。彼の情報源は、彼が考えているような見解を保持していないが、一時はそうだった可能性があります。私たちのほとんどは時間の経過とともに適応するため、彼の視点はおそらく変わったでしょう。彼が喜んでいないなら、彼に彼の情報源を紹介するように勧めてください。最後に、シナリオ#4では、彼の心配はあなた自身のものであることを彼に保証します。(それらはあるレベルにあるべきです)この「新しい」ツールがどのように彼の利益を保護し、彼の安全性を高めることができるかを示します。それができない場合、

私はこのすべてが単純すぎて機能しないように聞こえますが、時にはそれが単純に機能することもあります。実際、誠実であればあるほど、それはより頻繁に行われます。彼がチームの一部であるため、彼が「シニア」であるかどうかに関係なく、彼のニーズに対応することにより、チームのニーズに対応しています。あなたが彼と同じページにいたいが、そうではないことを彼に示すことは、彼があなたと一緒に働き始めることを奨励するかもしれません。これをすべて実行しても解決できない場合は、チームリーダーと話すことのできないすべてを実行しています。

ファジカルロジック


4

ソース管理には多くの迷信があります。それは直感に反し、数学は不可解であり、ソフトウェア会社が所有する単一の最も重要な資産に関係します。私はまだそれを信用していない部分があることを認めなければなりません。しかし、私はそれなしで一分間しません。

解決策の1つは、レポの管理責任を引き継ぐことです。もちろん、「あなたにとって多くの仕事であり、これはたまたま私が経験している分野である」と提示した場合、「あなたは何をしているのかわかりません」ではなく、働く可能性が高くなります。

「自分を先輩と見なす」と私が思うことを意味する場合、彼はそれを権威と支配の源と見なしているので、手放しません。したがって、回避策としては、Gitをローカルで使用して正常なコミットユニットとブランチを管理し、彼が要求するように1日に1回だけsvnにプッシュすることです。Gitはピアツーピアシステムとして設計されており、各ローカルマシンに完全なレポジトリコピーがあります。gitを他の開発者にそのように提供することもできますし、個々のワーキンググループ(1人または複数の開発者、フォーマルまたはアドホック)が内部で使用するSVNの単なる補足として使用できます。そして、シニア男性が寛容になったり、別の部門や会社に移ったり、SVNポリシーで回復不可能なコーナーに身を投じたりする日が来ると、すべてを一掃することに有利になります。


それは素晴らしい回避策です!
ジェイゴッド

ありがとう、@ JayGodse。Gitは、サーバーを必要とせずにレポをグループで共有できるため、Gitに最適です。これは、おそらく年配の男性のつま先を踏みすぎます。しかし、私はこの典型的な問題に対する典型的な解決策であると信じることはできません。これはgitフォーラムで議論されています。
キルベン

3

ただ彼らと話してください。見てください、私は上級開発者ですが、私には知らないことがあります。それがビジネスの性質です。彼らが防御的または攻撃的になる場合、それは開発者の場合の性格の問題であり、チームリーダー、またはチームリーダーである場合は上司が対処する必要があります。


実際、私は彼と話をしました。彼の応答は、「私たちは5年間このように物事を行ってきました。どうして違うやり方でやる必要があるのですか?」というものでした。彼は明らかに脅迫されているように感じますが、彼が何を恐れているのか、そしてその理由を正確には理解していません。
勇気ある匿名Co

1
@AnonymousCoward、彼の質問に満足に答えられない場合、彼はポイントを持っています。

@ThorbjørnRavnAndersen-私の答えは、私たちのチームは、共有する必要のない開発者固有の設定のみを含むプロジェクト構成ファイル内のSVNの競合を解決することで時間を無駄にするということでした。
勇気ある匿名Co

@AnonymousCowardしかし、それは彼の質問に答える答えではありません。SVNを使用する利点を指摘します。SVNについての知識の欠如は、おそらく彼を脅迫/不安にさせている。
クリスチャンP

3
あなたがそれを必要としなかったので、より良い方法を使うべきではないと言うことは、プログラマーが与えることができる最悪の言い訳です。その場合、「アセンブリを行うのはなぜですか?」それは言い訳であり、有効な点ではありません。明白な答えは、彼らが5年間行ってきた方法は明らかに非効率的、非効率的であり、専門的に認められた方法とは反対だからです。
ウェインモリナ

3

茶色のバッグのイニシアチブを開始します。数週間に一度、誰かが知っていることについてランチタイムのトークを行い、それを他の人に提示します。

これを言い訳として使用して、SVNの詳細と、おそらくいくつかの代替案の背後にある考え方を説明します。

数週間後、他の誰かが行くことができます。


3

私の個人的な経験に裏打ちされたヒントを提供しようと思います。

私のチームメイトの1人は、経験はあるものの、SVNを本当に理解していません。当然、SVNの海を描いたメンタルマップ上の空白の領域は、彼にかなり奇妙な使用パターンを採用させます。

たとえば、「開発者ごとに1日1 SVNコミット」というポリシーを宣言しました。そうしないと、「サーバーのディスクスペースがすぐになくなる」ためです。SVNコミットは完全なコピーではなくデルタであると彼に説明したとき、彼は疑いを持って返答しましたが、今日でもその意味を理解しているかどうかは完全にはわかりません。

ディスクスペースが問題であったとしても、一度に多くのファイルをコミットすることができるため、彼が提案したのは間違った解決策だと思います。さらに、SVNはバイナリファイルのデルタを保存しないため、大きなバイナリファイルをチェックインすることで多くのスペースを浪費する可能性があります。1日に1回のチェックインも、たとえば1日に複数のバグを修正する場合など、一緒に属さない変更をコミットするように強制するため、悪いです。

当社で採用したソリューションは、バイナリファイルを含むコミットを拒否するフィルターがあることです。チェックインコメントに特別なキーワードを使用することで、コミットを強制できます(実行内容を知っていることをSVNに示す必要があります)。1年に1回または2回、プロジェクトマネージャーは古いブランチをアーカイブし、リポジトリから削除します。この戦略では、私が知っているスペースの問題はありません(私たちのリポジトリはいくつかの異なるプロジェクトをサポートし、100000以上のリビジョンを持っています)。

要約すると、ディスクスペースは重要な問題であることに同意するが、その一方で指摘することができます。

  1. 1回のモノリシックなチェックインではなく、機能関連のチェックインの重要性。
  2. 1日に1つの大きなバイナリファイルをチェックインすることで、とにかくディスクがいっぱいになる可能性があるという事実。

その後、ディスクスペースの使用を管理する戦略(たとえば、バイナリファイルフィルター、定期的なバックアップ、古い未使用のブランチのクリーンアップ)を議論するために、会議(おそらく他の開発者またはシステム管理者と)を開催することを提案できます。

また、SVNにEclipse .project構成を含めるかどうかについての激しい議論がありました。私のチームメイトは、多くの無意味な衝突を引き起こしましたが、そうすべきだと主張しました。私は個々の開発者構成ファイルをSVNに保存することに反対でした。最後に、チームメイトは、コミットのたびにソースツリー全体を再チェックアウトして、「リポジトリにコミットされたコードが機能すること」を確認する練習をしていることがわかりました。それが、彼がSVNでプロジェクト構成を維持することに非常に熱心だった理由でした。そのため、プロジェクトを再インポートするのは簡単です。コミットが作業コピーをリモートのバイト単位で同期し、再チェックアウトが不要になると説明したとき、私のチームメイトは再び疑念を持って応答し、最終的に問題全体を取るに足らないものとして振り切った。

私の意見では、チームは、SCMとまったく共有する必要のない開発者固有の設定のみを含むプロジェクト構成ファイルのSVNの競合を解決することで時間を無駄にします。誰かが誤った仮定に基づいてプロセスを調整したため、これはすべて混乱しています。

ビルドサーバーを使用していますか?プロジェクト全体をチェックアウトして毎晩コンパイルするビルドサーバーがあります。翌朝、テスターに​​はすぐにテストできる製品のインストーラーがあり(マスタービルドが正常に実行された場合)、私たち(開発者)はすべての警告(およびエラーがある場合)を含むビルドレポートを取得します。もちろん、あなたは、各開発者は、プロジェクトの残りの部分と一緒にそれらをチェックアウトすることができます。ビルドサーバー用の標準の設定ファイルを設定し、それらを確認する必要があるが、それらは、チェックインすることはできません任意のローカルな変更。

このシナリオでは、プロジェクト全体をチェックアウトしていつでもビルドできるようにするという彼のニーズに対応します。また、製品の一部ではないため、そもそもチェックされてはならない変更をマージするのに時間を費やすことも避けます。製品はマスタービルドであり、クリーンに保つ必要があります。誰かがマスタービルドを壊す(たとえば、自分の.projectファイルをチェックインする)場合、変更を元に戻すか、その開発者に問題を修正させることができます。

もし彼が再び問題を持ち出せば、あなたは再び会議を開き(おそらく他の開発者と)、共通の戦略を一緒に見つけることを提案できます。

SVNの基本をよりよく理解するために、自分をシニアだと思っているチームメイトを説得するにはどうすればよいですか?

最善の戦略は、紛争を個人レベルに持ち込むことを避け、むしろ手元の問題と可能な解決策について議論することだと思います。あなたが彼が個人的な対立を探しているという印象を持っている場合、ここにいくつかの提案があります(再び、個人的な経験から):

  • チームのダイナミクスはどうですか?あなたの同僚は、このチームメイトと同様の経験を持っていますか?チームが特定の行動(小さなジョークまたは観察)を阻止し、建設的な対立(会議の提案、またはコーヒーブレーク中の非公式なトピックの立ち上げ)を促すために、チームのメンバーの1人に与えることができる、明示的ではない小さなヒントがたくさんあります)。優れたチームは、邪魔な要素をすばやく特定し、物事を通常の状態に戻すことができます。
  • あなたの人事管理はどれほど良いですか?私たちの会社には紛争が1件あり、状況をクリアするために人事部長が介入しなければなりませんでした。それは素晴らしいものではありませんでしたが、時には作業環境が非常に悪化し、それ自体では良くならないことがあります。これがあなたの場合ではないことを願っています(まだそれまでに得た印象はありません)が、あなたが良い人事管理を持っているか、自分で紛争を解決する必要があるかどうかを知ることは常に良いことです。

なぜこれを書いているのですか?あなたは、「SVNの基本をよりよく理解するために、自分を年配者と見なしているチームメイトを説得したい」と言います。私には、対立があまりにも個人的になっているように思えます。一部の心理学者は、私たちのコミュニケーションの70%が感情レベルにあると主張しています。このレベルが機能していない場合、人々は感情の処理に忙しすぎるため、事実について話すことを止めます。

だから、あなたのポイントを説明する以外に、コミュニケーションを改善するために何かを試みることもできます。コーヒーに招待したり、昼休みを一緒にしたり、仕事に関係のないトピックについて短い会話をしたりすると、コミュニケーションが改善され、同僚に理解してもらいたい重要な事実に注意を向けることができます。彼がこの種のコミュニケーションを受け入れた場合、おそらくあなたがこれまでに抱えていた対立は、あなたがお互いをよく知らず、いくつかの小さな誤解があったという事実に関連していたかもしれませんが、彼はおそらく建設的なコラボレーションを構築することに寛大です。彼が拒否した場合、彼の側にはより深い敵意があるかもしれません。

この場合、役割が明確になるまで待つべきだと思います。あなたのチームメイトが公式にあなたよりも高いランクを持っていない場合、彼は物事を改善しようとするあなたの試みにイライラすることはありません。時間が経つにつれて、彼はそれを受け入れるか、自分がより良く知っていることを見せようとし続けているなら、自分から馬鹿を作らなければなりません。彼より高いランクを持っている場合、これが議論されていないことを彼に理解させる方法を見つける必要があります。役割が明確になったときに、建設的な提案や批判を受け入れることができない場合、彼は本当に自尊心やそのようなものに何らかの問題を抱えているに違いありません。

したがって、上記のすべての戦略が失敗し、(非常に)不満を感じ続ける場合、私がすべきことはあなたの荷物をまとめてより良い場所を探すことだけだと思います。私は3年前にこの経験をし、今では非常に満足しているはるかに良い会社を見つけました。たぶん、これはあなたの場合ではありません(もちろんそうではないことを願っています)が、この点も理解してみてください。

ちょうど私の2セント。


2

SVNがどのように機能するか、SVNを使用する際のベストプラクティスについての学習資料を彼に教えてください。

@Peterが言うように-戦いを慎重に選択し、明らかに基本を理解していない人との戦いにエネルギーを浪費しないでください。SVNはまさに最先端のテクノロジーではありません。SVNはしばらく存在しているため、十分な情報があります。


2

「SVN時間の浪費」のログを保存してみてください。解決が必要な競合/チェックアウト/バージョンの問題があるたびに、あなた/チームがそれを解決するのにかかった時間をメモします。毎週かなりの時間を無駄にしていることが判明した場合は、彼と経営陣にエスカレートしてください。経営陣は、作業プロセスの簡単な変更で生産性を向上できると気づいたら、すぐに解決策を求めるでしょう。

または、チームがあなたのチェックインシステムを使用するトライアルウィークを同僚に説得してみてください(現在のプロジェクトとコードベースで簡単に達成できる場合)。うまくいかない場合は、1週間が過ぎたら古いシステムに戻すことができると彼に約束してください。しかし、彼はそれを自分で試してみてからやってくるかもしれません。


2

1. Subversionに問題を解決させます。言い方をすれば、同僚はSubversionに関してはあまり洗練されていません。その場合、技術的な解決策が良い選択肢になる可能性があります。チームの他のメンバーが同意し、マネージャーの祝福を得ることができる場合はglobal-ignores、リポジトリ設定ファイルにフィールドを追加して、バージョン管理下で不要な.projectファイルなどを除外できるようにします。

2.彼を助けてください。彼に物事を行う方法を課すのではなく、他の人に問題を引き起こすことなく、男が自分のやり方で物事を行うのを助けるようにしてください。同僚が自分のブランチで働いている場合、彼がをコミットするは本当に気にする必要はありません。彼がディレクトリ全体の新しいコピーをチェックアウトできるように彼の.projectファイルをコミットしたい場合、それはあなたにとって問題ではありません。気をつけるべき唯一のことは、彼が.projectファイルを共通の開発ブランチにマージしないことです。この場合も、開発ブランチでignoreプロパティを設定して.projectファイルを除外することにより、管理が容易になります。

3.上記からサポートを求めます。男と「あなたは私のボスではない」という議論に巻き込まれないでください。しかし、彼の行動が問題を引き起こしている場合は、マネージャーが状況を認識していることを確認してください。上司にアプローチする方法がわからない場合は、アドバイスを求めてみてください。「マイク、私はラリーと話をしようとしてきましたが、うまくいきません。X、Y、Zを主張します。残りの人たちは、発生する問題を回避するために多くの不必要な時間を費やしています。その人にどう対処するかについての指針を教えていただけますか?

4.彼を無視します。チームの誰かがこの男の話を聞くのはなぜですか?彼はプロジェクトに対する実際の権限を持っていますか?彼がそれを実施する力を持っていない場合、彼が開発者ごとに1つのコミットメントポリシーを宣言する場合、誰がにしますか?彼が気分を良くするのであれば、彼はタートル・タートルだと考えさせてください。本当の問題をあなたに作らせないでください。


1

男を解雇して、かかとを引きずり、新しいテクノロジーに向かって明らかに汚点を出します。または本当に彼の心を吹き飛ばして、GITを使い始めます。彼がSVnを理解できない場合、彼はきっとGITによって吹き飛ばされます。


gitは、Subversionができないどのようなニーズに応えますか?

gitの長所と短所についてはこちらをお読みください:dev-heaven.net/projects/20/wiki/Git_vs_SVN_comparisonまたはこのspeirs.org/blog/2007/7/19/a-subversion-user-looks-at-git.html
JPM

1

あなたは負けの戦いを戦っているように見えますが、引き抜くことができます。The Princeの Machiavelliは、現状を変えるのがどれほど難しいかを説明しました。その章をもう一度読んで、彼が提案することをやらないことをお勧めします。

自分の懸念をプライベートでシニア開発者に伝え、彼や他の開発者ではなく、物事のやり方を建設的に批判する必要があります。次に、講演を行い、ベストプラクティスガイドを作成します。SVNをよりよく理解することで、どのように生活が楽になるかを見せてください。最終的には、コストと効率がすべてです。つま先を踏むことなく物事を改善できることを証明できれば、これに勝つことができます。

年配の男性がリポジトリをそのまま使用している理由を理解してください。彼らの懸念は何ですか?彼らは何を達成しようとしていますか?どうすれば彼らの生産性を高めることができますか?とりわけ、冷静で専門的なアプローチを維持するようにしてください。イライラするのは簡単です。断言してください:職場での断定性:ケンバックとケイトバックによる厄介な状況を処理するための実践的なガイドは、良い読み物です。最後に、「どのようにして自分自身を切り替えさせるか」を考えます。正直な悪魔の擁護者であり、それはあなたが尋ねるべき良い答えと質問を思い付くのを助けるかもしれません。

補足として、私はユーモアを使用するように注意します。それは驚異的に働くかもしれませんし、あなたを暗殺者のように聞こえさせるかもしれません。したがって、私はそれを避けます。

基本的に、あなたはこれに勝てないかもしれないので、慎重にあなたの戦いを選んでください。その場合は、もう気にしないか、別の仕事を探してください。厳しいですね。


1

SVNが比較的新しいテクノロジーだった頃、私は8年ほど前にあなたの立場を逆にしたことがありました。私はシニア開発者であり、ジュニア開発者からSVNをインストールするように依頼されました(実際、彼は開発者よりも正確にITサポートを受けていました)。ワークロードの増加、不必要な複雑さなどに関する最初の疑念にもかかわらず、私は心を開いて、それから大ファンになりました。

私の見解では、あなたがこの問題を説明したことから、間違いなくチームの性格に帰着します-彼の頑固さは、この問題に関してチーム全体の障害を証明しています。この時点で後退し、チームの他のメンバーからのプレッシャーを自然に強め、手を強制する方が良いかもしれません。


1

これはほとんど「権限の欠如」の場合であり、物事を「管理下」に保つために彼自身の恐れの力を適用する人です。

これを解決するには、チームメイトや尊敬する人にインスピレーションを与え、SVNのようなものを使用することの緊急性を説明できる人を見つけます。そのように、彼の変化と基本的に「権威の喪失」への恐怖は、チームメンバーが彼に何をすべきかを告げていないためです。マネージャーのような人を使ってこの男に話すのは控えるでしょう。なぜなら、それはプレッシャーを加えるだけで、自分にとってよりストレスの多い状況を作り出すかもしれないからです。


1

私は最近、技術的変化を推進する:あなたのチームの人々が良いアイデアに基づいて行動しない理由と彼らがすべきことを納得させる方法を読みました。この本は、技術的な変更、変更に反対または拒否する人々のパターン、変更を実装するためのテクニック、そしてこれらのテクニックと周りのすべての人々の使用を最大化するための戦略を紹介する前に知っておくべき背景を提供します君は。

あなたの投稿に基づいて、あなたのチームメイトはおそらく無知か皮肉なパターンに陥ると思いますが、彼はまた不合理なケースかもしれません。これらのタイプの人々に対抗するために推奨されるテクニックのいくつかは、ターゲット環境内で経験を積むことにより、問題を見つけ、他の人々が発生する前に遭遇する問題への回答を提示し、適切な問題を解決し、情熱的にメッセージを配信しますが、熱心にならずに、方法とツールの利点を明確に示すことでテクニックを実証し、それらを有機的に販売します(ただし、それらを解決するためだけに問題を作成しないでください)。ただし、彼が不合理な場合は、

最後に、これらの手法を使い始めるには、全体的な戦略が必要です。積極的に敵対的または非合理的である人々があなたを遅くしないようにすることが重要です-それらを無視してください。代わりに、自分がより良い方法を持っていることを実証して納得させることができる人を見つけ、それらに基づいて適切な技術を個人として適用してください。あなたの知識が提供する改善点を見る人が増えたら、それらを使って他の人を説得し続けます。最後に、この草の根の努力を使用して、経営者にもっと良い方法があると納得させますが、彼らが理解できる用語(時間、お金、品質)でそれを忘れないでください。


1

この男に何かを「説得」しようとしないでください。人々(プログラマーでさえ)は、彼らが後輩と見なす誰かからの合理的/論理的な議論に応答したり、尊重したりしません。だから息を無駄にしないでください。代わりに、この人物との信頼レベルの構築に取り組みます。この人は、彼がそれにオープンであるときだけあなたが言わなければならないことを聞くでしょう。

それまでの間、実際の問題があります。

  1. 男は.projectファイルをレポにチェックインします:無視してください。ファイルを変更する必要はありません。また、チームの他の誰もがよく知っている人も同様です。手放す。それがあなたの「シニアメンバー」にセキュリティブランケットのような温かくて幸せな気持ちを与えるなら、それもそうです。
  2. ディスクスペースには予算があります。これが、シニア氏が1日に1回コミットする理由です。スペースの不足は本当ですか、それとも認識されていますか?たとえそれがただ認識されたとしても、その認識を変えるためにあなたができることがあるかもしれません。それはすぐに対処する必要があります-あなたがイニシアチブを取る場合、それはまた信頼を構築するのに役立ちます。

また、この男が自分のアイデアだと思ったときに、より良いSVNプラクティスを採用することを喜んで追加するかもしれません。それはあなたの側でいくつかの先入観を取り、彼はおそらくより良い実践を確立するための信用を取るでしょう-しかしあなたはそれで大丈夫です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.