aboutsummaryrefslogblamecommitdiffstatshomepage
path: root/.README.md
blob: f35b44780784755c6c4c68baf8b61d0d15d019c9 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12




                                       
 





                                                                             

            


                                                                                                                       
                                                                    

                                                     

                                                                           

                                        

                                                                         
                                                                       
                                                       




                                                                             


                                                                             

                                                                       
# Cygwin configuration files

My Cygwin home (~) configuration files.

## Deployment

To deploy on a fresh Cygwin installation, execute the lines below.
**Be careful** though, some of your files might get **deleted**.
Namely, your `.gitignore` file (if present) will be overwritten and basically
all of your files this repository isn't aware of will be deleted.
Execute the lines below one-by-one and, **most importantly**, review the list
of files `git clean` will delete by adding the `--dry-run` parameter.

    git init
    curl --silent --show-error --location https://github.com/egor-tensin/cygwin_home/raw/master/.gitignore > .gitignore
    git clean -d --force

    git remote add origin git@github.com:egor-tensin/cygwin_home.git
    git pull origin master
    git branch --set-upstream-to=origin/master master

The deployment should preferably take place right after you install Cygwin.

`git` doesn't preserve file permissions.
After the deployment, anyone will be able to read any of the files in the
repository.
To adjust the permissions so that only you can read the files, `source`
`.bashrc` (`bash` does this automatically) and execute:

    adjust_dotfiles_permissions

This also makes sure the directories in the repository are accessible only by
yourself (including the `.git` directory).

The important thing to note is that the permissions are reset each time `git`
writes to a file.
It is thus necessary to execute the line above after each invokation of
`git pull`, `git checkout`, etc.