Branch: refs/heads/master
  Home:   https://github.com/jenkinsci/git-plugin
  Commit: 583d700179a4a1ea180cb09ea4dc69dac97282e9
      
https://github.com/jenkinsci/git-plugin/commit/583d700179a4a1ea180cb09ea4dc69dac97282e9
  Author: Mark Waite <mark.earl.wa...@gmail.com>
  Date:   2021-04-03 (Sat, 03 Apr 2021)

  Changed paths:
    M pom.xml
    M src/main/java/hudson/plugins/git/GitSCM.java
    M src/main/java/jenkins/plugins/git/AbstractGitSCMSource.java
    M src/main/java/jenkins/plugins/git/GitSCMFileSystem.java
    M src/main/java/jenkins/plugins/git/GitToolChooser.java

  Log Message:
  -----------
  [JENKINS-38699] Only check for git repo in current workspace dir

The CliGit implementation of hasGitRepo() has the strange and surprising
behavior that if a workspace contains a directory named ".git" and that
directory is not a git repository (for example, an empty directory), then
command line git will search upwards in the file system tree to find a
git repository and will perform its operations on the repository it finds.

That is the right behavior for a user running command line git.  It allows
them to change to different directories and have the same experience
with command line git.

It is a dangerous behavior when deciding to run `git clean` or other
destructive operations in a Jenkins agent workspace.  If the agent
workspace is damaged, then the git commands search upwards, outside the
agent workspace.  This change causes the git plugin to only search in
the workspace, not any of the parent directories of the workspace.

Special thanks to @arpoch for patient work understanding the problem,
proposing a solution to the problem, and providing tests that show
the problem.


  Commit: c561ab5e7da47c30b923db9178b034ef8dca43cf
      
https://github.com/jenkinsci/git-plugin/commit/c561ab5e7da47c30b923db9178b034ef8dca43cf
  Author: Mark Waite <mark.earl.wa...@gmail.com>
  Date:   2021-04-04 (Sun, 04 Apr 2021)

  Changed paths:
    M pom.xml

  Log Message:
  -----------
  Require git client 3.7.1 - new hasGitRepo(boolean) api


  Commit: 449e6ab6ea7866f14e0df80ba219c6b1e5560538
      
https://github.com/jenkinsci/git-plugin/commit/449e6ab6ea7866f14e0df80ba219c6b1e5560538
  Author: Mark Waite <mark.earl.wa...@gmail.com>
  Date:   2021-04-04 (Sun, 04 Apr 2021)

  Changed paths:
    M pom.xml
    M src/main/java/hudson/plugins/git/GitSCM.java
    M src/main/java/jenkins/plugins/git/AbstractGitSCMSource.java
    M src/main/java/jenkins/plugins/git/GitSCMFileSystem.java
    M src/main/java/jenkins/plugins/git/GitToolChooser.java

  Log Message:
  -----------
  Merge pull request #1064 from MarkEWaite/do-not-search-parents-for-repo

[JENKINS-38699] Only check for git repo in current workspace dir


Compare: 
https://github.com/jenkinsci/git-plugin/compare/b90a2a082d45...449e6ab6ea78

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/git-plugin/push/refs/heads/master/b90a2a-449e6a%40github.com.

Reply via email to