public class FS_Win32_Cygwin extends FS_Win32
FS.Attributes, FS.ExecutionResult, FS.FSFactory
Modifier | Constructor and Description |
---|---|
|
FS_Win32_Cygwin()
Constructor
|
protected |
FS_Win32_Cygwin(FS src)
Constructor
|
Modifier and Type | Method and Description |
---|---|
File |
findHook(Repository repository,
String hookName)
Tries to find a hook matching the given one in the given repository.
|
static boolean |
isCygwin() |
FS |
newInstance() |
String |
relativize(String base,
String other)
|
File |
resolve(File dir,
String pn)
Resolve this file to its actual path name that the JRE can use.
|
ProcessResult |
runHookIfPresent(Repository repository,
String hookName,
String[] args,
PrintStream outRedirect,
PrintStream errRedirect,
String stdinArgs)
Checks whether the given hook is defined for the given repository, then
runs it with the given arguments.
|
ProcessBuilder |
runInShell(String cmd,
String[] args)
Initialize a ProcessBuilder to run a command using the system shell.
|
protected File |
userHomeImpl()
Determine the user's home directory (location where preferences are).
|
canExecute, discoverGitExe, getAttributes, isCaseSensitive, retryFailedLockFileCommit, setExecute, supportsExecute, supportsSymlinks
createSymLink, delete, detect, detect, discoverGitSystemConfig, execute, exists, getGitSystemConfig, internalRunHookIfPresent, isDirectory, isFile, isHidden, isSymLink, lastModified, length, normalize, normalize, readPipe, readPipe, readSymLink, resolveGrandparentFile, runHookIfPresent, runProcess, runProcess, searchPath, setGitSystemConfig, setHidden, setLastModified, setUserHome, userHome
public FS_Win32_Cygwin()
protected FS_Win32_Cygwin(FS src)
src
- instance whose attributes to copypublic static boolean isCygwin()
public FS newInstance()
newInstance
in class FS_Win32
public File resolve(File dir, String pn)
FS
This method can be relatively expensive. Computing a translation may require forking an external process per path name translated. Callers should try to minimize the number of translations necessary by caching the results.
Not all platforms and JREs require path name translation. Currently only Cygwin on Win32 require translation for Cygwin based paths.
protected File userHomeImpl()
FS
userHomeImpl
in class FS_Win32
public ProcessBuilder runInShell(String cmd, String[] args)
FS
runInShell
in class FS_Win32
cmd
- command to execute. This string should originate from the
end-user, and thus is platform specific.args
- arguments to pass to command. These should be protected from
shell evaluation.public String relativize(String base, String other)
FS
relativize
in class FS
base
- The path against which other
should be
relativized.other
- The path that will be made relative to base
.base
,
will yield the original other
.FileUtils.relativize(String, String)
public ProcessResult runHookIfPresent(Repository repository, String hookName, String[] args, PrintStream outRedirect, PrintStream errRedirect, String stdinArgs) throws JGitInternalException
FS
runHookIfPresent
in class FS
repository
- The repository for which a hook should be run.hookName
- The name of the hook to be executed.args
- Arguments to pass to this hook. Cannot be null
,
but can be an empty array.outRedirect
- A print stream on which to redirect the hook's stdout. Can be
null
, in which case the hook's standard output
will be lost.errRedirect
- A print stream on which to redirect the hook's stderr. Can be
null
, in which case the hook's standard error
will be lost.stdinArgs
- A string to pass on to the standard input of the hook. May be
null
.JGitInternalException
- if we fail to run the hook somehow. Causes may include an
interrupted process or I/O errors.public File findHook(Repository repository, String hookName)
FS
Copyright © 2016 Eclipse JGit Project. All rights reserved.