Mediabistro Git Configuration
Configuration
Logins & workflow
ssh: [uname]@wmbdev1.iworld.com
Git repositories (web interface) l/p:email/super-basic
Git on mediabistro wiki (including basic workflow)
Repositories
After logging in with SSH repos are found at
/www/[SITENAME]/git/[USERNAME]/[SITENAME]/
E.g. if my username is dbarchowsky and I need to work on the blogs:
$ cd /www/blogs/git/dbarchowsky/blogs/
Cloning an existing repo
How to start working on an existing repo for the first time.
sshtowmbdev1.iworld.com- Navigate to the appropriate directory and create a sandbox.
Using insidefacebook as an example:
$ cd /www/insidefacebook/git/
$ mkdir dbarchowsky
$ cd dbarchowsky
- Clone the repo.
- Find the project on http://git.iworld.com
- Make a note of its clone property.
$ # the argument to "git clone" comes from the project proeperties found on git.iworld.com $ git clone git@git.iworld.com:insidefacebook.git
- In the case of
insidefacebookthis creates a root directory "insidefacebook" with another "insidefacebook" directory inside of that. It was necessary to install the root "insidefacebook" directory in/www/insidefacebook/git/and then rename the root "insidefacebook" directory to "dbarchowsky" to create the sandbox. - Copy a
wp-config.phpfile from an existing sandbox. - No edits are necessary to the new copy of
wp-config.php. Optionally edit it to makeWP_DEBUG true.
- In the case of
- Create a branch for the new task.
$ cd insidefacebook $ git branch $ # response should be "* master" $ git co -b tm[TASK_ID] $ git branch $ # response should be " master" followed by "* tm[TASK_ID]"
- Tar up the repo.
$ tar -czvf insidefacebook.tar.gz insidefacebook
- FTP to the server.
- Download the tar file.
- Uncompress the tar file in the local working directory.
- Create a new PHP project in NetBeans.
- Set the run configuration for the project such that the files are uploaded to the sandbox on wbmdev1.iworld.com when they are saved.
- It's not necessary to have the project in a git repo locally. The repo is maintained on the sandbox on wmbdev1.iworld.com.
- After a file is uploaded, at the command line on the wmbdev1.iworld.com server:
$ git status -s $ # the response should include the file that was uploaded
Basic workflow for a new task
Update Git repo and create new branch
- Log in with SSH.
- Navigate to the appropriate Git repo (see Repositories)
- Get latest version of code
$ git co master $ git pull $ git co -b tm[TASK_ID]
Make edits with NetBeans IDE
- Create a NetBeans project to download and upload local from the blogs sandbox. (This only needs to be done once.)
- Project URL: [sandbox url] e.g.
http://dbarchowsky.blogs.mediabistro.com/ - Remote Connection:
wmbdev1.iworld.com - See Setting up Remote Connection in NetBeans IDE
- Upload Files: "On Save"
- Project URL: [sandbox url] e.g.


- Before editing files, right click on the file and select 'Download'.
- Edits will be uploaded to the sandbox with each save.
- Preview changes on the sandbox. E.g. http://dbarchowsky.blogs.mediabistro.com/tvnewser/
Checking in edits
$ git status -s $ git add [PATH] $ git commit -m "[task title]" $ git push origin tm[TASK_ID]
- The convention is to copy the task title from the task details and use that for the commit message.
Moving changes to preview (for review)
$ cd /www/[APPLICATION]/git/preview/ $ git fetch $ git merge remotes/origin/tm[TASK_ID]
Now the changes will be visible at http://preview.blogs.mediabistro.com/[BLOG_TITLE]/
Documentation & release notes
- QA Links:
http://preview.blogs.mediabistro.com/[BLOG_TITLE]/ - Application Changes:
http://git.iworld.com/blogs/commits?ref=tm[TASK_ID]