2008-10-10 14 views
16

मेरे पास एक सबवर्जन कार्यान्वयन (वेबफैक्शन के नियंत्रण कक्ष के लिए धन्यवाद करने के लिए आसान) के शीर्ष पर एक ट्रैक प्रोजेक्ट स्थापित है, लेकिन अब मेरे पास कॉन्फ़िगरेशन कार्य है। इस बात को ध्यान में रखते हुए, आसान ट्रैक में निम्नलिखित करने के तरीके हैं:मैं ट्रैक का सबसे अच्छा लाभ कैसे ले सकता हूं?

1) सुनिश्चित करें कि ग्राहक केवल उच्च स्तर की प्रगति संकेतक देख सकते हैं।
2) टिकट, परीक्षण और कार्यों पर दैनिक सारांश रिपोर्ट दें।

इसके अलावा, मुझे यह जानने में दिलचस्पी है कि अत्यधिक अनुशंसित प्लगइन्स हैं जो मुझे खेद है कि मैं इंस्टॉल करना भूल गया था।

उत्तर

8

1) उच्च स्तर प्रगति संकेतक:

रोडमैप टैब आपको तरह के एक उच्च स्तर प्रगति संकेतक देता है। यह सब मील के पत्थर को सूचीबद्ध करता है, और प्रत्येक मील का पत्थर के लिए यह आपको पता चलता है:

  • मील का पत्थर शीर्षक
  • संक्षिप्त विवरण
  • तारीख, जिस पर मील का पत्थर की वजह से है
  • कितना समय तो (या कितनी देर तक छोड़ दिया है आप अपने शेड्यूल के पीछे हैं)
  • उस मील का पत्थर कितने टिकट आवंटित किए गए हैं और उनमें से कितने बंद हैं, एक अच्छी हरी प्रगति पट्टी के रूप में कल्पना की गई है। यह बार इस धारणा पर खींचा गया है कि प्रत्येक टिकट में वही वज़न होता है, जो

आप अपनी अनुमतियों को इस तरह से प्रतिबंधित कर सकते हैं कि आपका ग्राहक केवल इस दृश्य तक पहुंच सके।

आप और आपके ग्राहक के बीच संबंधों के आधार पर, आप उसे नए टिकट (अनुमति TICKET_CREATE) बनाने की क्षमता दे सकते हैं, जो उन्हें अन्य टिकटों (TICKET_VIEW और TICKET_MODIFY) तक पहुंच पढ़ने के बिना संभव होना चाहिए। क्षमा करें, लेकिन वर्तमान में यह परीक्षण नहीं कर सकता है कि यह वास्तव में काम करता है, शायद कोई इस पर टिप्पणी कर सकता है।

2) दैनिक सारांश

Trac आपको प्रदान करता है आरएसएस सब कुछ आप सोच सकते हैं के लिए फ़ीड की रिपोर्ट। इससे दैनिक रिपोर्ट तैयार करना संभव होना चाहिए, या आप दिन में एक बार फ़ीड की जांच करने के लिए बस अपने आरएसएस क्लाइंट को बताएं।

ट्रैक में टिकट के मालिक को मेल के माध्यम से सूचित करने का अधिकार भी है यदि वह टिकट बदल गया, लेकिन यह तुरंत दैनिक सारांश के रूप में नहीं होगा। आप टिकटों पर टिप्पणी कर सकते हैं, और कभी-कभी हम उन्हें चर्चा बोर्ड या मेलिंग सूची की तरह उपयोग करते हैं, और इस मामले में तुरंत सूचित किया जाना अच्छा होता है।

 
SELECT p.value AS __color__, 
    owner AS __group__, 
status, 
    id AS ticket, summary, component, milestone, t.type AS type, time AS created, 
    changetime AS _changetime, description AS _description, 
    reporter AS _reporter 
    FROM ticket t 
    LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority' 
    WHERE status = 'new' AND (owner = '' OR owner = 'somebody' OR owner = 'None') 
    ORDER BY owner, p.value, t.type, time 

प्रत्येक टिकट एक मालिक और में कई लोगों को हो सकता है:

अन्य विन्यास

प्रत्येक परियोजना मैं Trac के साथ क्या में, मैं सभी टिकट है कि कोई भी मालिक की सूची के लिए एक कस्टम क्वेरी बनाने सीसी क्षेत्र, लेकिन के लिए रिपोर्ट मेरे टिकट केवल उन लोगों को सूचीबद्ध करता है जहां आप मालिक हैं।इस पर काबू पाने के लिए, मैं इस तरह एक प्रश्न जोड़ें:

 
    SELECT p.value AS __color__, 
    (CASE owner WHEN '$USER' THEN 
    (CASE status 
     WHEN 'assigned' 
     THEN 'Tickets that you accepted' 
     ELSE 'Tickets that were assigned to you, please accept or reassign' 
     END) 
    ELSE 'Tickets, that have your name in the cc' END) 
    AS __group__, 
    id AS ticket, summary, component, version, milestone, 
    t.type AS type, priority, time AS created, 
    changetime AS _changetime, description AS _description, 
    reporter AS _reporter 
    FROM ticket t 
    LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority' 
    WHERE t.status 'closed' AND (owner = '$USER' OR cc like '%$USER%') 
    ORDER BY owner, (status = 'assigned') DESC, p.value, milestone, t.type, time 

(इस कोड को Trac 0.11b में काम करता है)

मेरी पसंदीदा टिकट रिपोर्ट है कि। यह तीन वर्गों द्वारा टिकट goups:

  • टिकट आप के मालिक हैं और
  • टिकट है कि आप को सौंपा गया स्वीकार किए जाते हैं, लेकिन आप अभी तक
  • टिकट सीसी में आप हैं, वे स्वीकार नहीं किया (कि कल्पना बात आपको उस क्वेरी के बिना नहीं मिलता है)

प्रश्न डरावना लग सकते हैं, लेकिन वे पहले से मौजूद प्रश्नों के सरल संशोधन हैं। आपको ट्रैक स्रोत कोड हैक करने की ज़रूरत नहीं है, वेबइंटरफेस आपको प्रश्नों को संपादित करने देता है।

प्लगइन्स

यदि आप ग्रहण के साथ काम मैं XML RPC plugin सलाह देते हैं। यह Mylin के साथ तंग एकीकरण को सक्षम बनाता है। (मुझे लगता है कि बुनियादी एकीकरण प्लगइन के बिना भी काम करता है), इसलिए आपके डेवलपर्स ट्रैक वेबइंटरफेस पर स्विच किए बिना ग्रहण के भीतर से कई कार्य कर सकते हैं।

(आप ग्रहण उपयोग करें, लेकिन mylin नहीं जानते हैं, तो आप। यह पर एक नजर है चाहिए आप किसी भी विन्यास के बिना यह परीक्षण कर सकते हैं, क्योंकि यह सबसे ग्रहण वितरण के साथ आता है और Trac बिना स्टैंडअलोन के रूप में काम कर सकते हैं।)

17

मैं विकास कार्यों को ट्रैक करने और ग्राहक प्रगति दिखाने के लिए उसी ट्रैक प्रोजेक्ट का उपयोग करने की अनुशंसा नहीं करता। आप अपने विकास टिकट, टिप्पणियां इत्यादि से स्पष्ट होने में सक्षम होना चाहते हैं। ग्राहक गलत चीजों पर ध्यान केंद्रित कर सकते हैं और टिकट में रखे गए डेटा को गलत तरीके से समझ सकते हैं। मैं ग्राहक को एक अलग परियोजना के साथ प्रदान करने की अनुशंसा करता हूं जिसमें उच्च स्तरीय कार्य होते हैं और केवल उन कार्यों पर प्रगति दिखाते हैं, न कि किरकिरा किरकिरा।

+0

तो इस दृष्टिकोण को प्रतिबंधित करने का कोई तरीका नहीं है कि क्लाइंट को इसे प्राप्त करना है? – torial

+0

मुझे नहीं लगता कि आप किसी उपयोगकर्ता को केवल कुछ टिकट देखने के लिए प्रतिबंधित कर सकते हैं, न कि दूसरों को, या टिकटों की कुछ टिप्पणियां। –

+0

DRY का उल्लंघन करने लगता है (स्वयं को दोहराएं)। दो स्थानों में डेटा को बनाए रखना असंगतता और खोए गए सामानों के लिए एक नुस्खा है। –

3

@ डेव डंकिन सही है। अपने आंतरिक उपयोग के लिए ट्रैक का उपयोग करें, और Basecamp जैसे सिस्टम का उपयोग करें ताकि आपके क्लाइंट प्रोजेक्ट में क्या हो रहा है इसका एक उच्च स्तरीय अवलोकन प्रदान कर सकें।

+0

बेसकैम्प के लिए कोई भी मुफ्त विकल्प? – torial

+0

बेसकैम्प छोटी परियोजनाओं के लिए नि: शुल्क है। एंटी -37 सिग्नल साइट्स है जिसमें बेसकैम्प विकल्प की एक सूची है - http://www.whybasecampsux.org/#alternatives (साइट एक मजेदार पढ़ा है, हे) – ceejayoz

+0

आपके पास ट्रैक के दो उदाहरण भी हो सकते हैं, एक सार्वजनिक चेहरा, दूसरा अंदर का। यहाँ ठीक काम किया। – agnul

5

जहां तक ​​अतिरिक्त प्लगइन्स का संबंध है, हम टॉकमैक्रो, एक्सएमएलआरपीसीप्लगिन, वाइसविगप्लगिन और ट्रैकरेडैरेक्ट स्थापित करते हैं। विशेष रूप से, WYSIWYG प्लगइन विकी में अपने स्वयं के दस्तावेज़ों को बनाए रखने के लिए कम तकनीकी कर्मचारियों को प्रोत्साहित करने के लिए वास्तव में अच्छा है - आप प्रारूपण को बनाए रखने के दौरान एमएस वर्ड से सी & पी भी कर सकते हैं, जो मदद करता है।

ट्रैक के डिफ़ॉल्ट डिफ़ॉल्ट वर्कफ़्लो सामान पर नज़र डालें जो ट्रैक आपको देता है, यदि आपका स्वयं का वर्कफ़्लो ट्रैक के डिफ़ॉल्ट रूप से अच्छी तरह से प्रतिनिधित्व नहीं करता है। इसने हमें वर्कफ़्लो में कोड समीक्षा और एकीकरण परीक्षण चरण जोड़ने की अनुमति दी है।

मैं आपके ट्रैक सर्वर को कुछ केंद्रीय प्रमाणीकरण ढांचे के खिलाफ प्रमाणित करने की अनुशंसा करता हूं। हम इसमें एलएडीएपी पेड़ चलाते हैं, जिसमें इसका उपयोग ट्रेक, एसवीएन, सांबा, ओपन वीपीएन आदि सहित हमारे सभी आंतरिक सिस्टमों द्वारा किया जाता है।

3

यदि यह स्टॉक इंस्टॉल है, तो डेटाबेस केवल एक SQLite3 है, इसलिए आप आसानी से "सुरक्षित" जानकारी लाने के लिए स्क्रिप्ट लिख सकते हैं, जैसे टिकटों की संख्या, या रिपोर्ट में से एक क्यों नहीं। इस तरह, जब तक टिकट का नाम ठीक है, तब तक आप स्वतंत्र रूप से चर्चा कर सकते हैं। संशोधन, मील का पत्थर, विकिपीज, टैग (यदि आप उस प्लगइन का उपयोग करते हैं) भी उपलब्ध हैं।

3

आप शायद अज्ञात उपयोगकर्ता से ROADMAP_VIEW को छोड़कर सभी अनुमतियां वापस ले सकते हैं, लेकिन शायद यह थोड़ा सा भी उच्च-स्तर, नहीं होगा? व्यक्तिगत टिकट या टिप्पणी स्तर पर अभिगम नियंत्रण वर्तमान में AFAIK समर्थित नहीं है। ट्रैक अनुमतियों के विवरण के लिए http://trac.edgewall.org/wiki/TracPermissions देखें।

3

जैसा कि एक टिप्पणी में बताया गया है, आप उपयोगकर्ता के आधार पर टिकट या टिप्पणी पहुंच प्रतिबंधित नहीं कर सकते हैं। बाहरी रिपोर्टिंग सिस्टम ढूंढना या बनाना आपकी सबसे अच्छी शर्त है।

Trac के साथ अनुभव के आधार पर योग्य कुछ बातें:

  1. एक कस्टम workflow बनाना बहुत सीधा टेढ़े है। GraphViz का उपयोग संचार राज्यों और कार्यों के लिए एक बड़ी सहायता है।वर्कफ़्लो प्लगइन (जैसे AdvancedTicketWorkflowPlugin) जो अंतर्निहित कार्यक्षमता को आगे बढ़ाता है, यदि आपको अधिक जटिल स्थिति की आवश्यकता होती है तो ऐसा करना मुश्किल नहीं होता है।

  2. कस्टम रिपोर्टिंग के लिए, आप एसक्यूएल प्रश्नों कि मानकों को नामित लेने लिख सकते हैं, तो विकी पृष्ठ से इन से लिंक:

उदाहरण के लिए, क्वेरी शामिल कर सकते हैं एक जहां इस तरह खंड:

WHERE datetime(t.changetime, 'unixepoch') >= datetime('now','-$DAYS days') 

और विकि पृष्ठ इस हो सकता है:

Show activity for last [http://server.com/trac/report/9?DAYS=8 8] days. 
+0

मैं ट्रैक के लिए नया हूं, लेकिन मैंने पाया कि आप कस्टम टिकट प्रश्नों का उपयोग कर सकते हैं trac.edgewall.org/wiki/TracQuery उपयोगकर्ता के आधार पर टिकट दृश्य को प्रतिबंधित करने के लिए ऑथज़ आधारित विकी नियंत्रण trac-hacks.org/wiki/WikiRbacPatch के साथ। क्या मैं सही हू? –

+0

मैंने कभी विकीआरबैकपैच का उपयोग नहीं किया है, लेकिन प्रलेखन के आधार पर अतिरिक्त एक्सेस नियंत्रण केवल विकी पृष्ठों पर लागू होगा। मुझे विश्वास नहीं है कि यह पैच कस्टम क्वेरी के परिणामों को प्रभावित करेगा। –

संबंधित मुद्दे