Building and maintaining a high-performance development team is not an easy task. It takes time, effort, persistence, and a willingness to try, fail, and try again. There are many facets to dealing with people, and there are no definitively right or wrong approaches or answers. Every person is different and unique, every situation requires a fresh new take, and every day is a potential revelation.
Whether you line-manage a project team or a development team, the management principles will always be the same. What will change all the time, though, is how some of the practices within your management role will vary, and how your relationship with the team and other managers will vary.