2010-10-11 2 views
4

Я пишу программу на C. То, что я видел из моих предыдущих опытов, заключается в том, что я вносил некоторые изменения в правильную версию своей программы, и после этого изменения программа неправильно вычисляет.Разработка программ

Теперь может быть легко обнаружить, где я сделал это изменение и отменить его, или сделать это каким-либо другим способом, и в других случаях мне трудно (с трудом) обнаружить, где именно проблема ,

Можете ли вы предложить какую-то платформу или инструмент, который позволит вам поставить новую версию и старую версию программы бок о бок и отметить изменения, которые были применены в новой версии.

Я использую gcc 4.3.2 для компиляции c-программ на Ubuntu 10.04 OS.

Любое предложение приветствуется.

С уважением, Anup

+2

Я думаю, что это причина, потому что были созданы системы управления версиями, как CVS и SVN :) –

+0

Возможные дубликатом http://stackoverflow.com/questions/112932/graphical-diff-programs-for -linux –

+0

@Luca, письмо вопроса задает вопрос об отличии, но дух его требует системы контроля версий. –

ответ

0

Что вы запрашиваете, это какой-то инструмент, похожий на diff. Существует множество таких инструментов, начиная от утилиты командной строки diff и заканчивая интерфейсом графического интерфейса пользователя, например http://meld.sourceforge.net/. Большинство этих инструментов можно комбинировать с системами контроля версий (или иметь аналоги) в качестве Subversion.

+0

Для окон есть Winmerge, который имеет примерно такую ​​же функциональность, как Meld. – sergiol

2

Используйте систему управления версиями. Я рекомендую Subversion. Это позволит вам сравнить свою новую версию с более старой, чтобы точно увидеть, что изменилось, и вы можете вернуться к старой рабочей версии, если вы нарушите код.

0

Это основная цель всего программного обеспечения для управления версиями. Я рекомендую посмотреть Subversion, GIT или Mercurial.

Существуют тысячи интернет-ресурсов для этих программ.

И все они имеют хорошие программы сравнения, интегрированные в их инструменты GUI.

2

Если вы хотите получить небольшую, небольшую, портативную, личную систему управления персональным файлом, я могу предложить окаменелость. A documentation можно посмотреть здесь.

+1

Ископаемое охлаждение. –

0

Кроме того, попробуйте использовать Git/Mercurial/whatever вместе с Dropbox, это позволит вам продолжить разработку на других компьютерах. Он также научит вас взаимодействовать с другими людьми и с вами.

Это немного легче сделать с новыми системами VCS, такими как Git и Mercurial.

+0

Спасибо всем, я считаю, что утилита diff очень полезна для моей цели ... – anup

0

Если бы использовать систему контроля версий, таких как Git или Mercurial и следуют несколько хороших практик:

  • совершает небольшие, автономные изменения (который включает в себя совершение, т.е. сохранение изменений к управлению версиями, часто)
  • , фиксирующий хорошее состояние (или, по крайней мере, попытку, напримерчтобы код компилировался до того, как вы зафиксировали)

Вы всегда сможете вернуться в известное хорошее состояние.

Если ошибка была/была в ваших текущих изменениях, вы можете сравнить текущее состояние с предыдущей версией: где-то в измененных строках есть ошибка ... или что-то в измененных строках обнаружило существующую ошибку.

Если ошибка была введена некоторыми earlied, unknknown фиксации, вы можете использовать разрез`ать искать в истории, чтобы найти первый коммит, который демонстрирует данные об ошибке: смотрите, например git bisect станицы руководства.

НТН

Смежные вопросы