User Tools

Site Tools


project_management:git

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
project_management:git [2010/07/05 17:48]
172.26.14.218
project_management:git [2020/01/30 12:53]
aorth removed
Line 85: Line 85:
 To edit a commit (like fixing a spelling or logic mistake): To edit a commit (like fixing a spelling or logic mistake):
   - Look at ''git log'' and copy the first 5 or so characters from the ID of the commit you want to edit onto your clipboard.   - Look at ''git log'' and copy the first 5 or so characters from the ID of the commit you want to edit onto your clipboard.
-  - Start the interactive rebase process, pasting in the characters from the ID: ''git rebase --interactive ID''+  - Start the interactive rebase process, pasting in the characters from the ID: git rebase --interactive ID
   - Your editor will come up with several lines like ''pick d3adb33 Commit message'', one line for each commit since the older one.   - Your editor will come up with several lines like ''pick d3adb33 Commit message'', one line for each commit since the older one.
   - Change the word "pick" to "edit" in front of the commit you want to change.   - Change the word "pick" to "edit" in front of the commit you want to change.
   - Save and quit.   - Save and quit.
-  - Edit your project files to make the correction, then run ''git commit --all --amend'' +  - Edit your project files to make the correction, then run git commit --all --amend 
-  - After you’ve committed the fixed version, do ''git rebase --continue''+  - After you’ve committed the fixed version, do git rebase --continue
  
 +===== Change the last commit's author =====
 +Sometimes you commit something without realizing you haven't properly configured your //~/.gitconfig// Simple amend the last commit:
 +<code>$ git log -n1
 +commit 85f761ec52e4be90acd2dc7c9f5842e36ad7d783
 +Author: Alan Orth <aorth@debian.example.org>
 +Date:   Sun Nov 21 05:07:48 2010 -0500
 +
 +    Initial Import of DSpace 1.6.2
 +$ git commit --amend --author 'Alan Orth <a.orth@cgiar.org>'
 +... vim/nano will pop up, save the commit
 +$ git log -n1
 +commit 85f761ec52e4be90acd2dc7c9f5842e36ad7d783
 +Author: Alan Orth <a.orth@cgiar.org>
 +Date:   Sun Nov 21 05:07:48 2010 -0500
 +
 +    Initial Import of DSpace 1.6.2</code>
 ===== Assume file unchanged ===== ===== Assume file unchanged =====
 Certain files, like database configuration files, need to be tracked but you don't want to push changes to the remote repo.  This is different than using a ''.gitignore'' file, as //those files are not tracked in the repository// This allows you to have a generic database config in your repository without telling everyone your database password! Certain files, like database configuration files, need to be tracked but you don't want to push changes to the remote repo.  This is different than using a ''.gitignore'' file, as //those files are not tracked in the repository// This allows you to have a generic database config in your repository without telling everyone your database password!
Line 127: Line 143:
     changed = green     changed = green
     untracked = cyan</file>     untracked = cyan</file>
 +    
 + ==== Check the current git configurations ====
 +<file>git config -l</file>