TungNT (Blue)

tungnt.blue@gmail.com

User Tools

Site Tools


development:system:git

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
development:system:git [2024/08/12 08:13] tungntdevelopment:system:git [2024/08/15 09:03] (current) tungnt
Line 1: Line 1:
 ====== Git ====== ====== Git ======
- 
-{{:development:system:git-model_2x.png?450|}} 
- 
-https://nvie.com/posts/a-successful-git-branching-model 
  
 ===== Cài đặt và cấu hình ===== ===== Cài đặt và cấu hình =====
Line 55: Line 51:
 Identity added: /var/root/.ssh/id_rsa_nguyentung (/var/root/.ssh/id_rsa_nguyentung) Identity added: /var/root/.ssh/id_rsa_nguyentung (/var/root/.ssh/id_rsa_nguyentung)
 $ ssh-add -l $ ssh-add -l
-4096 SHA256:HntA0FUgaD0ELTaHSU/h0SfTAKVPkJ9xEjnP6aXyCvM /var/root/.ssh/id_rsa_tungntblue (RSA) +4096 SHA256:HntA0FUgaD0***EjnP6aXyCvM /var/root/.ssh/id_rsa_tungntblue (RSA) 
-4096 SHA256:2cJDMSnLCJPnd6K4cIdjmI58FwJ/X7u4Wrml4S8ulHw /var/root/.ssh/id_rsa_nguyentung (RSA)+4096 SHA256:2cJDMSnLCJP***Wrml4S8ulHw /var/root/.ssh/id_rsa_nguyentung (RSA)
 </code> </code>
  
Line 66: Line 62:
      
 ssh-add /var/root/.ssh/id_rsa_tungntblue ssh-add /var/root/.ssh/id_rsa_tungntblue
-ssh-add /var/root/.ssh/id_rsa_tungnt9pay 
 ssh-add /var/root/.ssh/id_rsa_nguyentung ssh-add /var/root/.ssh/id_rsa_nguyentung
  
Line 145: Line 140:
  
 https://www.atlassian.com/git/tutorials/git-submodule https://www.atlassian.com/git/tutorials/git-submodule
 +
 +====== GitFlow ======
 +
 +https://github.com/1sitevn/gitflow
 +
 +{{:development:system:git-model_2x.png|}}
 +
 +https://nvie.com/posts/a-successful-git-branching-model
 +
 +<code bash>
 +tungnt@MacBook-Pro-cua-Nguyen-2 1site % mkdir gitflow
 +tungnt@MacBook-Pro-cua-Nguyen-2 1site % cd gitflow 
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % ls -la
 +total 0
 +drwxr-xr-x  2 tungnt  staff   64 Aug 12 16:14 .
 +drwxr-xr-x@ 7 tungnt  staff  224 Aug 12 16:14 ..
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % echo "# gitflow" >> README.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git init
 +Initialized empty Git repository in /private/var/www/1site/gitflow/.git/
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add README.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m "first commit"
 +[master (root-commit) 0f7d8f6] first commit
 + 1 file changed, 1 insertion(+)
 + create mode 100644 README.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -M main
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git remote add origin git@github.com:1sitevn/gitflow.git
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push -u origin main
 +Enumerating objects: 3, done.
 +Counting objects: 100% (3/3), done.
 +Writing objects: 100% (3/3), 290 bytes | 290.00 KiB/s, done.
 +Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
 +To github.com:1sitevn/gitflow.git
 + * [new branch]      main -> main
 +branch 'main' set up to track 'origin/main'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch develop
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +* main
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout develop
 +Switched to branch 'develop'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout main   
 +Switched to branch 'main'
 +Your branch is up to date with 'origin/main'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push -u origin develop
 +Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
 +remote: 
 +remote: Create a pull request for 'develop' on GitHub by visiting:
 +remote:      https://github.com/1sitevn/gitflow/pull/new/develop
 +remote: 
 +To github.com:1sitevn/gitflow.git
 + * [new branch]      develop -> develop
 +branch 'develop' set up to track 'origin/develop'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b feature/1-add-test-file develop
 +Switched to a new branch 'feature/1-add-test-file'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git status
 +On branch feature/1-add-test-file
 +Untracked files:
 +  (use "git add <file>..." to include in what will be committed)
 + test.js
 +
 +nothing added to commit but untracked files present (use "git add" to track)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m '#1 - add a new test.js file'
 +[feature/1-add-test-file c637c90] #1 - add a new test.js file
 + 1 file changed, 1 insertion(+)
 + create mode 100644 test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push
 +fatal: The current branch feature/1-add-test-file has no upstream branch.
 +To push the current branch and set the remote as upstream, use
 +
 +    git push --set-upstream origin feature/1-add-test-file
 +
 +To have this happen automatically for branches without a tracking
 +upstream, see 'push.autoSetupRemote' in 'git help config'.
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push --set-upstream origin feature/1-add-test-file
 +Enumerating objects: 4, done.
 +Counting objects: 100% (4/4), done.
 +Delta compression using up to 8 threads
 +Compressing objects: 100% (2/2), done.
 +Writing objects: 100% (3/3), 399 bytes | 399.00 KiB/s, done.
 +Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
 +remote: 
 +remote: Create a pull request for 'feature/1-add-test-file' on GitHub by visiting:
 +remote:      https://github.com/1sitevn/gitflow/pull/new/feature/1-add-test-file
 +remote: 
 +To github.com:1sitevn/gitflow.git
 + * [new branch]      feature/1-add-test-file -> feature/1-add-test-file
 +branch 'feature/1-add-test-file' set up to track 'origin/feature/1-add-test-file'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout develop
 +Switched to branch 'develop'
 +Your branch is up to date with 'origin/develop'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git pull
 +remote: Enumerating objects: 1, done.
 +remote: Counting objects: 100% (1/1), done.
 +remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
 +Unpacking objects: 100% (1/1), 906 bytes | 906.00 KiB/s, done.
 +From github.com:1sitevn/gitflow
 +   0f7d8f6..e94388a  develop    -> origin/develop
 +Updating 0f7d8f6..e94388a
 +Fast-forward
 + test.js | 1 +
 + 1 file changed, 1 insertion(+)
 + create mode 100644 test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout release-1.0.0 develop
 +error: pathspec 'release-1.0.0' did not match any file(s) known to git
 +error: pathspec 'develop' did not match any file(s) known to git
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b release-1.0.0 develop
 +Switched to a new branch 'release-1.0.0'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git tag 'v1.0.0'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push --tags
 +Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
 +To github.com:1sitevn/gitflow.git
 + * [new tag]         v1.0.0 -> v1.0.0
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git merge develop
 +Already up to date.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  feature/1-add-test-file
 +  main
 +* release-1.0.0
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push origin release-1.0.0
 +Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
 +remote: 
 +remote: Create a pull request for 'release-1.0.0' on GitHub by visiting:
 +remote:      https://github.com/1sitevn/gitflow/pull/new/release-1.0.0
 +remote: 
 +To github.com:1sitevn/gitflow.git
 + * [new branch]      release-1.0.0 -> release-1.0.0
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout main
 +Switched to branch 'main'
 +Your branch is up to date with 'origin/main'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % ls -la
 +total 8
 +drwxr-xr-x   4 tungnt  staff  128 Aug 12 16:43 .
 +drwxr-xr-x@  7 tungnt  staff  224 Aug 12 16:14 ..
 +drwxr-xr-x  14 tungnt  staff  448 Aug 12 16:43 .git
 +-rw-r--r--   1 tungnt  staff   10 Aug 12 16:15 README.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git pull origin main  
 +remote: Enumerating objects: 1, done.
 +remote: Counting objects: 100% (1/1), done.
 +remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
 +Unpacking objects: 100% (1/1), 890 bytes | 445.00 KiB/s, done.
 +From github.com:1sitevn/gitflow
 + * branch            main       -> FETCH_HEAD
 +   0f7d8f6..9cd0401  main       -> origin/main
 +Updating 0f7d8f6..9cd0401
 +Fast-forward
 + test.js | 1 +
 + 1 file changed, 1 insertion(+)
 + create mode 100644 test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % ls -la
 +total 16
 +drwxr-xr-x   5 tungnt  staff  160 Aug 12 16:44 .
 +drwxr-xr-x@  7 tungnt  staff  224 Aug 12 16:14 ..
 +drwxr-xr-x  14 tungnt  staff  448 Aug 12 16:44 .git
 +-rw-r--r--   1 tungnt  staff   10 Aug 12 16:15 README.md
 +-rw-r--r--   1 tungnt  staff   20 Aug 12 16:44 test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git tag 'v1.0.0'
 +fatal: tag 'v1.0.0' already exists
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push --tags
 +Everything up-to-date
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  feature/1-add-test-file
 +* main
 +  release-1.0.0
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -d release-1.0.0
 +Deleted branch release-1.0.0 (was e94388a).
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push origin -d release-1.0.0
 +To github.com:1sitevn/gitflow.git
 + - [deleted]         release-1.0.0
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -d feature/1-add-test-file
 +Deleted branch feature/1-add-test-file (was c637c90).
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push origin -d feature/1-add-test-file
 +To github.com:1sitevn/gitflow.git
 + - [deleted]         feature/1-add-test-file
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b hotfixs main
 +Switched to a new branch 'hotfixs'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add test.js
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m '#1 - Hotfix test'
 +[hotfixs c16aab1] #1 - Hotfix test
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push origin hotfixs
 +Enumerating objects: 5, done.
 +Counting objects: 100% (5/5), done.
 +Delta compression using up to 8 threads
 +Compressing objects: 100% (2/2), done.
 +Writing objects: 100% (3/3), 395 bytes | 395.00 KiB/s, done.
 +Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
 +remote: 
 +remote: Create a pull request for 'hotfixs' on GitHub by visiting:
 +remote:      https://github.com/1sitevn/gitflow/pull/new/hotfixs
 +remote: 
 +To github.com:1sitevn/gitflow.git
 + * [new branch]      hotfixs -> hotfixs
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout main
 +Switched to branch 'main'
 +Your branch is up to date with 'origin/main'.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -D hotfixs
 +Deleted branch hotfixs (was c16aab1).
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git push origin -d hotfixs
 +To github.com:1sitevn/gitflow.git
 + - [deleted]         hotfixs
 +</code>
 +
 +====== Git Rebase & Git Merge ======
 +
 +{{ :development:system:git-merge-vs-rebase.png |}}
 +
 +<code bash>
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +* main
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test1
 +Switched to a new branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test2
 +Switched to a new branch 'test2'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1
 +Switched to branch 'test1'
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % touch t1.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T1'
 +[test1 d4dd238] T1
 + 1 file changed, 0 insertions(+), 0 deletions(-)
 + create mode 100644 t1.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline
 +d4dd238 (HEAD -> test1) T1
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % touch t2.md       
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .         
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T2'
 +[test1 cfeb1a6] T2
 + 1 file changed, 0 insertions(+), 0 deletions(-)
 + create mode 100644 t2.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % touch t3.md       
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .         
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T3'
 +[test1 a371709] T3
 + 1 file changed, 0 insertions(+), 0 deletions(-)
 + create mode 100644 t3.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline 
 +a371709 (HEAD -> test1) T3
 +cfeb1a6 T2
 +d4dd238 T1
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test2
 +Switched to a new branch 'test2'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline    
 +a371709 (HEAD -> test2, test1) T3
 +cfeb1a6 T2
 +d4dd238 T1
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % echo 'Update T1' >> t1.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .                
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T4'       
 +[test2 ab9eacf] T4
 + 1 file changed, 1 insertion(+)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline        
 +ab9eacf (HEAD -> test2) T4
 +a371709 (test1) T3
 +cfeb1a6 T2
 +d4dd238 T1
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1
 +Switched to branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % cat t1.md 
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % echo 'Update T5' >> t1.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .                
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T5'       
 +[test1 54f6b26] T5
 + 1 file changed, 1 insertion(+)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline        
 +54f6b26 (HEAD -> test1) T5
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % echo 'Update T6' >> t2.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .                
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T6'       
 +[test1 6e2e921] T6
 + 1 file changed, 1 insertion(+)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline        
 +6e2e921 (HEAD -> test1) T6
 +54f6b26 T5
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test2
 +Switched to branch 'test2'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % echo 'Update T7' >> t3.md
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .                
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'T7'       
 +[test2 d3eae48] T7
 + 1 file changed, 1 insertion(+)
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline        
 +d3eae48 (HEAD -> test2) T7
 +ab9eacf T4
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  main
 +  test1
 +* test2
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test2_bk
 +Switched to a new branch 'test2_bk'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1
 +Switched to branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test1_bk
 +Switched to a new branch 'test1_bk'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  main
 +  test1
 +* test1_bk
 +  test2
 +  test2_bk
 +  
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1
 +Switched to branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git merge test2      
 +Auto-merging t1.md
 +CONFLICT (content): Merge conflict in t1.md
 +Automatic merge failed; fix conflicts and then commit the result.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git commit -m 'merge for test1 from test2'
 +[test1 dec26bf] merge for test1 from test2
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline                         
 +dec26bf (HEAD -> test1) merge for test1 from test2
 +d3eae48 (test2_bk, test2) T7
 +6e2e921 (test1_bk) T6
 +54f6b26 T5
 +ab9eacf T4
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  main
 +* test1
 +  test1_bk
 +  test2
 +  test2_bk
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1_bk
 +Switched to branch 'test1_bk'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -D test1
 +Deleted branch test1 (was dec26bf).
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test1
 +Switched to a new branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch -D test2  
 +Deleted branch test2 (was d3eae48).
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test2_bk
 +Switched to branch 'test2_bk'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout -b test2
 +Switched to a new branch 'test2'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test1
 +Switched to branch 'test1'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git branch
 +  develop
 +  main
 +* test1
 +  test1_bk
 +  test2
 +  test2_bk
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git rebase test2
 +Auto-merging t1.md
 +CONFLICT (content): Merge conflict in t1.md
 +error: could not apply 54f6b26... T5
 +hint: Resolve all conflicts manually, mark them as resolved with
 +hint: "git add/rm <conflicted_files>", then run "git rebase --continue".
 +hint: You can instead skip this commit: run "git rebase --skip".
 +hint: To abort and get back to the state before "git rebase", run "git rebase --abort".
 +Could not apply 54f6b26... T5
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git rebase --continue
 +[detached HEAD e245d41] T5 - Version 2
 + 1 file changed, 1 insertion(+)
 +Successfully rebased and updated refs/heads/test1.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline    
 +a16f04e (HEAD -> test1) T6
 +e245d41 T5 - Version 2
 +d3eae48 (test2_bk, test2) T7
 +ab9eacf T4
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git checkout test2_bk
 +Switched to branch 'test2_bk'
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git rebase test1_bk  
 +Auto-merging t1.md
 +CONFLICT (content): Merge conflict in t1.md
 +error: could not apply ab9eacf... T4
 +hint: Resolve all conflicts manually, mark them as resolved with
 +hint: "git add/rm <conflicted_files>", then run "git rebase --continue".
 +hint: You can instead skip this commit: run "git rebase --skip".
 +hint: To abort and get back to the state before "git rebase", run "git rebase --abort".
 +Could not apply ab9eacf... T4
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git add .            
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git rebase --continue
 +[detached HEAD eec7eb5] T4 - Version 2
 + 1 file changed, 1 insertion(+)
 +Successfully rebased and updated refs/heads/test2_bk.
 +tungnt@MacBook-Pro-cua-Nguyen-2 gitflow % git log --oneline                                
 +e4d0fc8 (HEAD -> test2_bk) T7
 +eec7eb5 T4 - Version 2
 +6e2e921 (test1_bk) T6
 +54f6b26 T5
 +a371709 T3
 +cfeb1a6 T2
 +d4dd238 T1  
 +</code>
 +
 +  * git merge: khi xem log các commit sẽ được sắp xếp theo thời gian commit, dùng khi dự án ít người cùng làm.
 +  * git rebase: khi xem log các commit sẽ không sắp xếp theo thời gian commit như git merge, mà sẽ ưu tiên commit của cá nhân lên đầu. Nên sử dụng khi dự án có nhiều người cùng làm.
 +
 +====== Git Log ======
 +
 +https://git-scm.com/book/id/v2/Git-Basics-Viewing-the-Commit-History
 +
 +<code bash>
 +% git log --oneline 
 +
 +% git log -- filename modules/core/app/Http/Controllers/ExampleController.php
 +% git log -p -- filename modules/core/app/Http/Controllers/ExampleController.php
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 api.9s.vn % git log --pretty=format:"%h - %ae, %ar : %s : %cn" --since="2024-01-01"  --no-merges --author=tungnt -- filename modules/core/app/Http/Controllers/ExampleController.php
 +56e4d7fe03 - tungnt.blue@gmail.com, 3 months ago : Payout hold with MC : tungnt
 +b668bd133d - tungnt.blue@gmail.com, 5 months ago : Test TCB VA Key : tungnt
 +54327213ec - tungnt.blue@gmail.com, 5 months ago : Test TCB : tungnt
 +50db75fa85 - tungnt.blue@gmail.com, 5 months ago : Test TCB : tungnt
 +ae02e78fb4 - tungnt.blue@gmail.com, 5 months ago : Test TCB : tungnt
 +eaae3faa6f - tungnt.blue@gmail.com, 5 months ago : Test TCB : tungnt
 +7656495fc8 - tungnt.blue@gmail.com, 5 months ago : Update Payout config : tungnt
 +b0ffc56c41 - tungnt.blue@gmail.com, 6 months ago : Test key : tungnt
 +1958516401 - tungnt.blue@gmail.com, 6 months ago : Update SMS BIDV 8600664888 : tungnt
 +6ecef6fb81 - tungnt.blue@gmail.com, 6 months ago : D : tungnt
 +cd02aafff4 - tungnt.blue@gmail.com, 7 months ago : Debug : tungnt
 +2dcbc9cdb7 - tungnt.blue@gmail.com, 7 months ago : Golive jira_5001 : tungnt
 +7dae86672a - tungnt.blue@gmail.com, 7 months ago : MSB VA : tungnt
 +7974263273 - tungnt.blue@gmail.com, 7 months ago : Update name TiktokLive to Tiktok : tungnt
 +
 +tungnt@MacBook-Pro-cua-Nguyen-2 api.9s.vn % git show 54327213ec
 +commit 54327213ec68b3e8e75194653a60bb95f9f09e5a
 +Author: tungnt <tungnt.blue@gmail.com>
 +Date:   Tue Mar 12 16:44:03 2024 +0700
 +
 +    Test TCB
 +
 +diff --git a/modules/core/app/Http/Controllers/ExampleController.php b/modules/core/app/Http/Controllers/ExampleController.php
 +index 9b98620801..1bbac43c4c 100644
 +--- a/modules/core/app/Http/Controllers/ExampleController.php
 ++++ b/modules/core/app/Http/Controllers/ExampleController.php
 +@@ -47,11 +47,11 @@ class ExampleController extends BaseController
 + 
 +             $aesPlaintTextHash = hash('sha256', $aesPlaintText, true);
 +     
 +-            $sign1 = $this->sign($aesPlaintTextHash, storage_path('credentials/rsa/transfer/techcombank/2024/tcb2024/1pay_cks_1.jks'), '***');
 +-            $sign2 = $this->sign($aesPlaintTextHash, storage_path('credentials/rsa/transfer/techcombank/2024/tcb2024/1pay_cks_2.jks'), '***');
 ++            $sign1 = $this->sign($aesPlaintTextHash, storage_path('credentials/rsa/transfer/techcombank/2024/1pay_cks_1.jks'), '***');
 ++            $sign2 = $this->sign($aesPlaintTextHash, storage_path('credentials/rsa/transfer/techcombank/2024/1pay_cks_2.jks'), '***');
 +     
 +-            $verify1 = $this->verify($aesPlaintTextHash, $sign1, storage_path('credentials/rsa/transfer/techcombank/2024/tcb2024/1pay_tcb_verify_sign_1.cer'));
 +-            $verify2 = $this->verify($aesPlaintTextHash, $sign2, storage_path('credentials/rsa/transfer/techcombank/2024/tcb2024/1pay_tcb_verify_sign_2.cer'));
 ++            $verify1 = $this->verify($aesPlaintTextHash, $sign1, storage_path('credentials/rsa/transfer/techcombank/2024/1pay_tcb_verify_sign_1.cer'));
 ++            $verify2 = $this->verify($aesPlaintTextHash, $sign2, storage_path('credentials/rsa/transfer/techcombank/2024/1pay_tcb_verify_sign_2.cer'));
 +     
 +             dd($aesPlaintText, $sign1, $sign2, $verify1, $verify2);
 +         }
 +</code>
  
 ====== Một số lỗi có thể gặp ====== ====== Một số lỗi có thể gặp ======
development/system/git.1723450411.txt.gz · Last modified: 2024/08/12 08:13 by tungnt

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki