Developer forums (C::B DEVELOPMENT STRICTLY!) > Development
Read-only Git, SVN Repo for Code::Blocks
ollydbg:
--- Quote from: jens on December 22, 2013, 01:22:51 pm ---ll is an alias for ls -l.
It might probably be an issue with line-endings or the executable-flag (all files are linux shell-scripts).
--- End quote ---
Thank, it looks like the difference is, for example
--- Code: --- bootstrap | 0
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/bootstrap b/bootstrap
old mode 100755
new mode 100644
--- End code ---
This looks like the executable-flag.
Jenna:
--- Quote from: ollydbg on December 22, 2013, 02:10:26 pm ---
--- Quote from: jens on December 22, 2013, 01:22:51 pm ---ll is an alias for ls -l.
It might probably be an issue with line-endings or the executable-flag (all files are linux shell-scripts).
--- End quote ---
Thank, it looks like the difference is, for example
--- Code: --- bootstrap | 0
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/bootstrap b/bootstrap
old mode 100755
new mode 100644
--- End code ---
This looks like the executable-flag.
--- End quote ---
In .git/config you can set [core] filemode to false.
Either manually or with git config --local core.filemode false.
Maybe deleting the line completely will also work (I guess the global setting is false on windows).
--- Quote from: https://www.kernel.org/pub/software/scm/git/docs/git-config.html ---core.fileMode
If false, the executable bit differences between the index and the working tree are ignored; useful on broken filesystems like FAT. See git-update-index(1).
The default is true, except git-clone(1) or git-init(1) will probe and set core.fileMode false if appropriate when the repository is created.
--- End quote ---
ollydbg:
--- Quote from: jens on December 22, 2013, 02:45:02 pm ---In .git/config you can set [core] filemode to false.
Either manually or with git config --local core.filemode false.
Maybe deleting the line completely will also work (I guess the global setting is false on windows).
--- Quote from: https://www.kernel.org/pub/software/scm/git/docs/git-config.html ---core.fileMode
If false, the executable bit differences between the index and the working tree are ignored; useful on broken filesystems like FAT. See git-update-index(1).
The default is true, except git-clone(1) or git-init(1) will probe and set core.fileMode false if appropriate when the repository is created.
--- End quote ---
--- End quote ---
Ok, I will try it now.
Some information which may be useful.
http://stackoverflow.com/questions/1271449/how-to-set-subversion-properties-with-git-svn
It looks like we can have a .gitattributes file (quite similar with the one we already have .gitignore file), in this file, we can set the executable flags for those files. Not sure this can solve my issue, I need to read more...
ollydbg:
--- Quote from: ollydbg on December 22, 2013, 02:47:37 pm ---
--- Quote from: jens on December 22, 2013, 02:45:02 pm ---In .git/config you can set [core] filemode to false.
Either manually or with git config --local core.filemode false.
Maybe deleting the line completely will also work (I guess the global setting is false on windows).
--- Quote from: https://www.kernel.org/pub/software/scm/git/docs/git-config.html ---core.fileMode
If false, the executable bit differences between the index and the working tree are ignored; useful on broken filesystems like FAT. See git-update-index(1).
The default is true, except git-clone(1) or git-init(1) will probe and set core.fileMode false if appropriate when the repository is created.
--- End quote ---
--- End quote ---
Ok, I will try it now.
--- End quote ---
Good news, see the log:
--- Code: ---
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$ git config --list
core.symlinks=false
core.autocrlf=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
pack.packsizelimit=2g
help.format=html
http.sslcainfo=/bin/curl-ca-bundle.crt
sendemail.smtpserver=/bin/msmtp.exe
diff.astextplain.textconv=astextplain
rebase.autosquash=true
user.name=asmwarrior
user.email=...
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
svn-remote.svn.url=http://svn.code.sf.net/p/codeblocks/code
svn-remote.svn.fetch=trunk:refs/remotes/trunk
svn-remote.svn.branches=branches/*:refs/remotes/*
svn-remote.svn.tags=tags/*:refs/remotes/tags/*
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$ git config --local core.filemode false
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$ git config --list
core.symlinks=false
core.autocrlf=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
pack.packsizelimit=2g
help.format=html
http.sslcainfo=/bin/curl-ca-bundle.crt
sendemail.smtpserver=/bin/msmtp.exe
diff.astextplain.textconv=astextplain
rebase.autosquash=true
user.name=asmwarrior
user.email=...
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
svn-remote.svn.url=http://svn.code.sf.net/p/codeblocks/code
svn-remote.svn.fetch=trunk:refs/remotes/trunk
svn-remote.svn.branches=branches/*:refs/remotes/*
svn-remote.svn.tags=tags/*:refs/remotes/tags/*
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$ git reset --hard remotes/trunk
HEAD is now at a8fd2cf * compiler: fix MinGW auto detection, we actually distrib
ute 'mingw32-make' (not 'make')
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$ git status
# On branch master
nothing to commit, working directory clean
zyh23@ZYH /f/jens-codeblocks-mirror/codeblocks.git (master)
$
--- End code ---
Look, it was clean working directory now.
The next step I want to do is try to see whether I can have commit to svn.
As you mirror url is “http://svn.code.sf.net/p/codeblocks/code”, is it possible to becomes "https://svn.code.sf.net/p/codeblocks/code"?
Another concern is that my working git mirror(not full svn revision mirrored), I see the url is "https://ollydbg@svn.code.sf.net/p/codeblocks/code/trunk"
So, if I need a commit access, I guess the url name is "https://<developer_nick_name@......", which means every developer has their own unique urls. As OBF said, if the git commit SHA value is calculated from(depends on) the svn url, it is hard to reuse the git mirror mirrored from different svn urls. Maybe, we can only mirror the C::B SVN protocol?
Jenna:
After doing the hard-reset, but before fetching any new revisions you can try this approach:
http://theadmin.org/articles/git-svn-switch-to-a-different-a-svn-url/
I did it on my local git-svn repo, when we switched from berlios to sourceforge.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version