เปลี่ยนนาฬิการะบบของ windows ตอนนี้วันที่แก้ไขไฟล์ผิด


0

ฉันทำงานใน Visual Studio 2013 และทดสอบรหัสบางอย่างสำหรับการจัดการเหตุการณ์ในวันที่ระบุ ฉันเปลี่ยนนาฬิกา Windows เป็น 1/1/2016 ซึ่งรวบรวมโค้ดใน Visual Studio (โดยเฉพาะโครงการเว็บดังนั้นฉันจึงเผยแพร่ทางเทคนิค) และผลักไฟล์ให้อยู่ในสภาพแวดล้อมการพัฒนาของฉัน

หลังจากการทดสอบฉันเปลี่ยนนาฬิการะบบของฉันกลับเป็นวันที่ปัจจุบันและทำการเข้ารหัสต่อไป เผยแพร่อีกครั้งและตอนนี้ฉันสังเกตเห็นว่าบางไฟล์ที่ฉันแก้ไขตั้งแต่การเปลี่ยนแปลงครั้งล่าสุดยังคงแสดงวันที่แก้ไขล่าสุด 1/1/2016 ตอนนี้เมื่อฉันผลักดันการเปลี่ยนแปลงเพื่อ dev ไม่ทราบว่าไฟล์ถูกแก้ไขและไม่เคยสะท้อนการเปลี่ยนแปลงที่ฉันทำในรหัส

ฉันจะแก้ไขการคอมไพล์เพื่อให้คอมไพล์โดยใช้เวลาปัจจุบันและวันที่ที่ถูกต้องได้อย่างไร?

ฉันได้ลองลบโฟลเดอร์ที่การเผยแพร่ได้รับการผลักดันให้คิดว่ามันจะใช้เวลาวันที่ของระบบที่ถูกต้องในปัจจุบัน


2
โดยทั่วไปสิ่งที่อันตรายที่จะเปลี่ยนวันที่ระบบของคุณ คุณอาจพบปัญหามากขึ้นกับระบบของคุณในภายหลัง - ฉันจะพยายาม 'แตะ' ไฟล์ต้นฉบับทั้งหมดเพื่อให้ได้วันที่ปัจจุบัน ไม่แน่ใจว่า Windows มีเครื่องมือที่เทียบเท่ากับ 'touch' ใน * nix
Aganju

คำตอบ:


2
  1. สะอาด ทางออกของคุณ
  2. สร้างใหม่ การแก้ไขปัญหา
  3. ลบ ไฟล์ทั้งหมดในพื้นที่เผยแพร่
  4. ประกาศใหม่ .

ใน Visual Studio เวอร์ชันใหม่กว่ามีตัวเลือกในการลบไฟล์ทั้งหมดซึ่งเป็นส่วนหนึ่งของกระบวนการเผยแพร่อย่างน้อยก็ด้วยการเผยแพร่ระบบไฟล์

สะอาด จะลบไบนารีที่มีอยู่สำหรับแหล่งที่มาของคุณ ควรระบุที่อยู่ไฟล์ใด ๆ ที่สร้างขึ้นในขณะที่เวลาของระบบมีการเปลี่ยนแปลง

สร้างใหม่ จะคอมไพล์ไบนารีทั้งหมดใหม่ตั้งแต่เริ่มต้น ไฟล์ใหม่เหล่านี้ควรสะท้อนถึงเวลาของระบบปัจจุบัน ในบันทึกย่อด้านหลีกเลี่ยงการใช้ปกติ สร้าง ตัวเลือกมันจะไม่เปลี่ยนไฟล์ที่ใหม่กว่าหรือไม่เปลี่ยนแปลงในรหัสตั้งแต่รวบรวมล่าสุด

ในที่สุดการลบไฟล์ที่เผยแพร่และการเผยแพร่ใหม่จะส่งออกไบนารีที่สร้างขึ้นใหม่โดยไม่มีเวอร์ชันเก่าที่มีการประทับเวลาที่ยุ่งเหยิง

นี่คือความครอบคลุมของความแตกต่างระหว่าง Build, Rebuild และ Clean: http://www.codeproject.com/Articles/663453/Understanding-Clean-Build-and-Rebuild-in-Visual-St

แก้ไข: ขั้นตอนเหล่านี้จะใช้ได้กับโครงการ VS เกือบทุกประเภท แต่จะไม่สามารถใช้งานได้กับแอพ ASP.Net webforms แบบดั้งเดิมเนื่องจากไฟล์ aspx เป็นทั้งแหล่งที่มาและเนื้อหาจากมุมมองของคอมไพเลอร์ดังนั้นจึงไม่ถูกแทนที่ในระหว่างการสร้าง


แม้หลังจากการทำความสะอาดให้สร้างใหม่ลบโฟลเดอร์การนำไปใช้งานแล้วปรับใช้ไฟล์ใหม่ยังคงแสดงวันที่แก้ไขเมื่อฉันเปลี่ยนนาฬิการะบบ ในความพยายามอีกครั้งฉันลองขั้นตอนเดียวกันและ "สร้างเว็บไซต์ขึ้นใหม่"
gh0st

ไฟล์ใดที่แสดงการประทับเวลาไม่ดีโดยเฉพาะ พวกเขาเป็นรหัสไฟล์หรือเนื้อหา?
Frank Thomas

ประมาณ 98% ของฉัน bin ไฟล์ (ไฟล์รหัส .aspx.cs ) และ .aspx ไฟล์ในโฟลเดอร์ที่ฉันแก้ไขเมื่อเวลาถูกเปลี่ยนเป็น 1/1/2016
gh0st

อ่าโอเคนั่นแย่แล้ว ไม่มีวิธีที่ดีในการแก้ไขไฟล์ ASPX เนื่องจากไฟล์จะไม่ถูกแทนที่ในระหว่างการคอมไพล์เว้นแต่ว่าคุณจะคอมไพล์ด้วยชุดประกอบที่ไม่สามารถอัพเดตได้ คุณจะต้องแก้ไขไฟล์แต่ละไฟล์ด้วยตนเองหรือใช้เครื่องมือเช่นนี้หรือสคริปต์ PowerShell เพื่อแก้ไข: dottech.org/104563/windows-review-smart-timestamp blogs.technet.com/b/heyscriptingguy/archive/2012/06/01/...
Frank Thomas

1
คุณเปลี่ยนวันที่ในไฟล์โซลูชันของคุณเองไม่ใช่สำเนาที่เผยแพร่ ลบไฟล์ที่เผยแพร่ที่คุณมีและเผยแพร่ใหม่ จากนั้นคุณจะไม่มีไฟล์ที่มีวันที่ไม่ดี
Frank Thomas

0

Visual Studio เดิมคือ Copying all files to temporary location below for package/publish:. ฉันลบตำแหน่งชั่วคราวแล้วปรับใช้ใหม่ เมื่อโครงการเสร็จสิ้นการปรับใช้ใหม่วันที่ปัจจุบันพบในแอตทริบิวต์ของไฟล์ที่แก้ไขวันที่


ดีใจที่คุณได้มันทำงาน บริเวณอุณหภูมิที่คุณค้นพบอยู่ที่ไหน
Frank Thomas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.