Commit Graph

455 Commits

Author SHA1 Message Date
Robert Loehning
e2347b3d92 git: Added an option to undo unstaged changes only 2010-07-30 19:39:55 +02:00
Friedemann Kleint
c3eb4b6611 VCS: Windows slash display fixing spree.
Task-number: QTCREATORBUG-1795
2010-07-05 09:52:32 +02:00
Alessandro Portale
679b5e91f1 User visible paths need to go through QDir::toNativeSeparators()
Task-number: QTCREATORBUG-1795
2010-07-03 20:05:20 +02:00
con
ede2a7c975 Merge remote branch 'origin/2.0'
Conflicts:
	doc/qtcreator.qdoc
	share/qtcreator/gdbmacros/dumper.py
	src/libs/qmljs/qmljs-lib.pri
	src/plugins/debugger/breakhandler.cpp
	src/plugins/projectexplorer/projectexplorer.h
	src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h
2010-06-30 14:25:09 +02:00
Friedemann Kleint
38e91624de VCS[git]: Adapt to 1.7.0, handling of renamed files.
Reviewed-by: con
2010-06-28 12:34:39 +02:00
Friedemann Kleint
6793f1f962 VCS[git]: Add arguments setting for gitk, add to locator.
Task-number: QTCREATORBUG-1577
2010-06-16 09:05:50 +02:00
Friedemann Kleint
59592c820c VCS: Do not force LANG=C on all commands.
Introduce extra flag.

Task-number: QTCREATORBUG-1623
2010-06-15 12:17:09 +02:00
Bill King
55edbe1c5b Fix parameters hidden by local variables. 2010-06-11 13:35:22 +10:00
Friedemann Kleint
33ec71adda VCS[git]: Use QProcess::startDetached() if possible for gitk.
Task-number: QTCREATORBUG-1577
2010-06-08 16:02:11 +02:00
Friedemann Kleint
7dc2760f0e VCS[git]: Add menu option to launch gitk.
Task-number: QTCREATORBUG-1577
2010-06-08 15:55:12 +02:00
con
7f733b1545 Merge remote branch 'origin/2.0'
Conflicts:
	README
	doc/qt-html-templates.qdocconf
	doc/qtcreator.qdoc
	doc/qtcreator.qdocconf
	src/app/Info.plist
	src/plugins/bineditor/BinEditor.pluginspec
	src/plugins/bookmarks/Bookmarks.pluginspec
	src/plugins/cmakeprojectmanager/CMakeProjectManager.pluginspec
	src/plugins/coreplugin/Core.pluginspec
	src/plugins/coreplugin/coreconstants.h
	src/plugins/cpaster/CodePaster.pluginspec
	src/plugins/cppeditor/CppEditor.pluginspec
	src/plugins/cpptools/CppTools.pluginspec
	src/plugins/cvs/CVS.pluginspec
	src/plugins/debugger/Debugger.pluginspec
	src/plugins/designer/Designer.pluginspec
	src/plugins/fakevim/FakeVim.pluginspec
	src/plugins/find/Find.pluginspec
	src/plugins/genericprojectmanager/GenericProjectManager.pluginspec
	src/plugins/git/ScmGit.pluginspec
	src/plugins/helloworld/HelloWorld.pluginspec
	src/plugins/help/Help.pluginspec
	src/plugins/locator/Locator.pluginspec
	src/plugins/mercurial/Mercurial.pluginspec
	src/plugins/perforce/Perforce.pluginspec
	src/plugins/projectexplorer/ProjectExplorer.pluginspec
	src/plugins/qmldesigner/QmlDesigner.pluginspec
	src/plugins/qmlinspector/QmlInspector.pluginspec
	src/plugins/qmljseditor/QmlJSEditor.pluginspec
	src/plugins/qmlprojectmanager/QmlProjectManager.pluginspec
	src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec
	src/plugins/regexp/RegExp.pluginspec
	src/plugins/resourceeditor/ResourceEditor.pluginspec
	src/plugins/snippets/Snippets.pluginspec
	src/plugins/subversion/Subversion.pluginspec
	src/plugins/texteditor/TextEditor.pluginspec
	src/plugins/vcsbase/VCSBase.pluginspec
	src/plugins/welcome/Welcome.pluginspec
2010-06-08 10:39:45 +02:00
Friedemann Kleint
c745155191 VCS/Diff editors: Set readonly attributes correctly.
Make VCS-generated editors read-only, enable editing
when opening a patch.
Make VCS-Editor non-read-only by default, add setter
for "Forced read-only" that makes it a temporary,
read-only file.

Task-number: QTCREATORBUG-1528
Reviewed-by: Thorbjorn Lindeijer <thorbjorn.lindeijer@nokia.com>
2010-06-07 14:53:28 +02:00
Friedemann Kleint
1c69b97ca6 VCS[git]: Make push/pull synchronous commands.
..for timeout handling to take effect. Also,
log window will update continuously.

Task-number: QTCREATORBUG-777
2010-05-25 11:48:53 +02:00
Friedemann Kleint
5364f5c152 VCS: Show message box on timeouts/Add SSH prompt.
- Use message boxes on timeouts.
- Add a configuration for a graphical SSH password prompt binary with
defaults
- Launch commands that require authentification with no terminal on UNIX
and environment variable SSH_ASKPASS set accordingly.
- First attempt at introduce a common function to synchronously run VCS
commands in base plugin with flags.
- Use standard execution log entries in all VCS plugins (outputwindow).
2010-05-21 17:46:00 +02:00
Friedemann Kleint
20f26c987f VCS[git/hg]: Prevent search for repository from creating folders
... when autofs is involved. Check for files instead of folders
and stop checking/recursing up at '/' or $HOME. Further fixup
will follow.

Task-number: QTCREATORBUG-1361
Task-number: QTBUG-10495
2010-05-20 08:48:17 +02:00
Friedemann Kleint
b4b177fa27 VCS[git/hg]: Prevent search for repository from creating folders
... when autofs is involved. Check for files instead of folders
and stop checking/recursing up at '/' or $HOME. Further fixup
will follow.

Task-number: QTCREATORBUG-1361
Task-number: QTBUG-10495
2010-05-19 17:41:14 +02:00
con
38f6379f39 Merge remote branch 'origin/2.0'
Conflicts:
	doc/qtcreator.qdoc
	src/plugins/find/currentdocumentfind.cpp
	src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp
2010-05-17 17:40:40 +02:00
Leena Miettinen
cf233161fa Doc - UI - Fix UI text capitalization to follow the KDE Style Guide rules.
Reviewed-by: ossi
2010-05-14 15:53:56 +02:00
dt
9bc9fe73e1 File renaming
Reviewed-By: con
Reviewed-By: Friedemann Kleint

We now support renaming files. The version control system tries first to
rename, if that doesn't support or can't rename the file we do a normal
rename. (Note: git, hg, perforce > 2009.02 support renaming, cvs not.
(perforce untested)). We correctly notify all editors of the renamed
file and tell the project manager to rename the file in the project.

Note: Only the qt4projectmanager knows how to rename files.

Note: renaming folders, moving files to different folders, renaming
.pro/.pri files is not supported. Those things can be later added after
this has proven to work correctly in the simple case.

Also we don't do any actions based on the renaming like renaming
classes, changing include guards or #include lines.
2010-05-12 14:14:44 +02:00
Friedemann Kleint
5923733889 VCS: Speed up
Do not listen on ICore::contextChanged to update actions
(became slow after additional contexts).
git: Make code to find top level faster, avoid
constructing file info lists.
Acked-by: con
2010-04-23 16:21:09 +02:00
Friedemann Kleint
93eb7d7be0 VCS[git]: Refuse to show sha 000000 or ^xxxx.
Task-number: QTCREATORBUG-978
2010-03-29 16:24:48 +02:00
Friedemann Kleint
de28b61cca VCS[git], CodePaster: Add support for applying patches.
Modify CodePaster::fetch to do a mimetype detection on the
content, create a filename with the matching extension and
open that file.
This gives correct syntax highlighting  and makes "Save as"
more convenient. Keep the file around and delete on exit.

Modify patch mimetype with some content detection (higher priority
than C++).

Add a "current patch file" to the VCSBasePlugin::State. Add "Apply
patch" to git with whitespace fix.
2010-03-25 16:23:37 +01:00
Friedemann Kleint
5dd8dfba30 tr()-Fixes 2010-03-23 17:24:59 +01:00
Friedemann Kleint
bcd020f382 VCS[git]: Introduce optional pull --rebase.
Do 'git rebase --abort' if something fails.
2010-03-19 16:07:34 +01:00
Friedemann Kleint
75e7d30de3 VCS[git]: Reorganize menu action creation/Start SVN submenu.
Create actions with convenient factory functions, do enabling per
file/project/repository centrally.
2010-03-19 14:48:21 +01:00
Robert Loehning
20ee66f86a Fixed parsing of git status so that one can check out a branch when not on a branch before. 2010-03-15 20:51:42 +01:00
Friedemann Kleint
93b156e585 VCS[git]: Add support for cleaning a repository.
Present user with a checkable list of files to be cleaned (add reusable
dialog to VCSBase module).
2010-03-12 15:54:09 +01:00
Friedemann Kleint
edf3437644 VCS/git: Add setting for diff --patience and make it default. 2010-03-10 11:19:59 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Friedemann Kleint
c56b56be81 VCS: Minor fixes
- git status: Recognize text in case -u was passed
- Mercurial: Always run in C locale
2010-03-01 10:33:35 +01:00
Friedemann Kleint
a1fed931c4 VCS: Fix time-out handling for synchronous processes.
Introduce static utilities to Utils::SynchronousProcess
for synchronous processes that mimicks the handling
of Utils::SynchronousProcess (apply timeout after no
more data are available on stdout/stderr as opposed
to waitForFinished()).

Task-number: QTCREATORBUG-777
2010-03-01 10:06:32 +01:00
Friedemann Kleint
214679d65b Git: Improve Timeouts.
- Observe timeout setting when running synchronous commands.
- Increase Default on Windows
- Stop process with terminate first (signal).
Task-number: QTCREATORBUG-777
2010-02-26 17:43:37 +01:00
Friedemann Kleint
299ea32ab0 tr()-Fixes. 2010-02-25 14:53:01 +01:00
Friedemann Kleint
d185889351 VCS[git]: Make version fail warning less obtrusive.
Display correct warning if git is not installed.
Do not display it as error (popping up the log pane) from
IVersionControl.  Introduce separate caching flag to avoid
repeated execution if git is not installed.
2010-02-16 09:12:37 +01:00
Friedemann Kleint
9b76c068f9 VCS[git]: Implement add using '--intent-to-add' depending on version.
Implement IVersionControl::vcsAdd() using --intent-to-add with a cached
version check. On this occasion, implement vcsDelete() as well using
'git rm -f'.
2010-02-02 12:27:05 +01:00
Friedemann Kleint
18ab532e56 VCS[git]: Make Branchdialog non-modal as is StashDialog.
Give dialogs a consistent look, set
WA_DeleteOnClose on them and improve updating.
Add a Refresh/Diff buttons to branch dialog.
2010-01-27 12:47:23 +01:00
Friedemann Kleint
9ac98a402c VCS[git]: Add support for stashes.
Add non-modal stash management dialog and additional menu option
"Stash snapshot..." to stash away changes prompting for a description,
which will immediately replay the stash (take snapshot and continue
working).
Add interface to IVersionControl for creating/restoring/deleting
snapshots for backup/complex undo operations (currently supported
by git only). Add test options to VCSBasePlugin.
Clean up and extend git client accordingly.
2010-01-15 12:28:22 +01:00
Friedemann Kleint
d5271a086d VCS[hg, git]: Add support for repository creation.
Add repository creation operation to IVersionControl, implement for hg
and git, add convenience slot with prompts to VCSBasePlugin.
Add respective menu options and make menus are visible in case no VCS is
active.
Change project wizards extension page to list VCS that are capable of
repository creation in a QComboBox in case the directory is not managed
by another VCS (in which case it lists that one for operation 'add').
On that occasion, polish the Project selection to use a QComboBox as
well and add some smartness to find the most suitable project to add via
path matching.
2010-01-12 16:45:21 +01:00
Tobias Hunger
b95c86db23 Remove duplicate inclusions of headers
Reviewed-by: thorbjorn
2010-01-11 10:26:12 +01:00
Friedemann Kleint
b81c30df2b VCS[git]: Add log repository action. 2010-01-08 16:07:05 +01:00
Tobias Hunger
cacdc6c736 Add display name to VCS plugin structs
Reviewed-by: Friedemann Kleint
2010-01-08 11:51:53 +01:00
Friedemann Kleint
bcba9ea604 VCS [git]: Annotate previous version/single filelog annotation.
Task-number: QTCREATORBUG-503
2010-01-07 17:29:14 +01:00
Friedemann Kleint
c55b5b7b31 Git/SVN: Ignore whitespace in annotation/blame (introduce setting).
Defaulting to true.

Task-number: QTCREATORBUG-502
2010-01-05 15:45:41 +01:00
Friedemann Kleint
730fd82ac8 VCS: Add "Open file" context menu action to VCS log pane
to be used for status/opened output. enabling convenient opening.
Append repository as block data to log text to be able to resolve
relative paths.
2009-12-15 14:20:06 +01:00
Friedemann Kleint
304d398357 Git: Expand commit template relative to repository directory
if it is a relative file specification.
Task-number: QTCREATORBUG-451
2009-12-14 15:16:40 +01:00
dt
839bc1e941 Fixes commiting with empty author/email information
Also only filling in the author field works, git does magic then.
Also fix quoting
2009-12-11 14:08:27 +01:00
Friedemann Kleint
7ce3683143 CVS: Use new VCSBasePlugin-class.
Make the diff-base directory a property of VCSBaseEditor and use
everywhere.
2009-12-09 12:41:10 +01:00
Friedemann Kleint
8097879d6d VCS: Introduce Base class for VCS plugins, use in git.
Fixes:
- Cannot diff a file that does not belong to a project
- Cannot commit when a temporary diff/log view is open
  due to the current file pointing to a temporary directory
- git's project-related actions not passing the correct
  relative path.

Implementation:
- Centralize code to listen for Qt Creator's relevant state changes
  in VCSBasePlugin, dispatching the changes to the instances affected.
  (avoiding multiple invocations of searches/QFileInfo on current).
- Do the same for the corelistener catching closing SubmitEditors.
- Introduce VCSBasePluginState representing the relevant state
  (current file/project).
- Call git with working directory set and relative arguments
- Remove setEnabled/isEnabled() logic of IVersionControl
- Pass toplevel from VCSManager to avoid duplicate searches.
2009-12-08 14:26:41 +01:00
Friedemann Kleint
8335a06ed4 Code model: Update on changes from the versioning system.
Add changed signals to IVersionControl and
VCSManager and wire them to the update methods. Add a menu action for
manually updating. Improved version of reverted
7aa2411693.

Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2009-11-11 14:32:54 +01:00
con
e4b1a25dd2 Revert "Code model: Update on changes from the versioning system."
This reverts commit 7aa2411693.
It breaks the code model updates completely. So reverting this change
until we have the right thing.

Reviewed-by: Roberto Raggi
2009-11-10 18:19:37 +01:00