whitespace-per-line
2024/03/02
2024/02/29
how to set file name when upload file,react
const modifiedFile = new File([file], "_icon.jpg", { type: file.type });
const formData = new FormData();
formData.append("file", modifiedFile);
javascript, join object array
objArray.map(obj=>obj.a).join(',')
- map
-join
yarn uninstall
yarn remove xxx
yarn add xxxx
2024/02/28
Docker not found when freshly installed on Mac
Docker not found when freshly installed on Mac
- Docker Desktop -> Settings -> Advanced -> Choose System, not User -> Click [Apply & restart]
2024/02/27
Arrow function vs Function declaration
- arrow function can not use this
- arrow function must be defined before use
- Function declaration can use new
spring boot test,spring context
- get value from application.yaml
- use environment
- use profile
- @component
- component scan
- initialize the component
- add it to spring application context
- can get the bean from application context
- @Component equals @Bean in a @Configuration
- can use @SpringBootTest to load spring application context
2024/01/09
after add ports to runing docker container
have to re-create container
docker-compose up -d --force-recreate xxx
2023/10/19
git,commit,branch ,cherry-pick ,merge
- commit
- is snapshot of all files
- not a change set
- to store the hash ID of the latest commit in a branch name.
- branch name is just the lastest hash of commi branch name is just the lastest hash of commit
- In fact, this is the very definition of a branch name: a name like
mastersimply stores the hash ID of the commit we want to call the latest for that branch. So given theA--B--Cstring of commits, we just add the namemaster, pointing to commitC:
- To remember which branch we want Git to update, as well as which commit we have checked-out right now, Git has the special name
HEAD current branch- A--B--C--D <-- develop (HEAD), master
HEADstill names the current commit.- A detached HEAD just means that Git has made the name
HEADpoint directly to some commit instead of attaching it to a branch name
- git merge
- git checkout master
- set HEAD to master
- git merge develop
- go backwards from master and develop, to find a shared base commit (祖先), called merge base
- The merge base commit is determined entirely by the commit graph,
- git diff baseCommint master => get change set 1
- git diff basecommit develop => get change set 2
- git combine the difference , use a new commit id to save the result ( merge commit )
- cherry-pick
- git diff somecommitId to get the change set
- just put the change on current commit(branch)
- but it maybe not works very well, git use cherry-pick-style merge, force the merge base commit to be the parent of the cherry-picked commit.
- cherry-pick create a new commit to save the result.
G--H--F' <-- master (HEAD) / ...--D \ E--F <-- developcherry-pick uses Git's merge machinery to do the change-combining, but leaves the graph unmerged, simply making a copy of some existing commit- git merge somecommitid(branch)
- git merge -no-ff
2023/10/12
postgres, golang , sqlx, placeholder, in
sql: where some_id = any(:some_name)
golang, sqlx:
" some_name" : pg.StringArray([]string )